Gesture-equipped touch screen methods for duration-based functions

ABSTRACT

In various embodiments, methods are provided at an apparatus including at least one non-transitory memory storing a plurality of applications, a touch screen, and one or more processors in communication with the at least one non-transitory memory and the touch screen. The methods include various operations that are performed based on a contact or gesture duration.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of and claims priority to U.S.patent application Ser. No. 15/072,354, filed Mar. 16, 2016 which, inturn, is a continuation of and claims priority to U.S. patentapplication Ser. No. 13/567,004, filed Aug. 3, 2012, now U.S. Pat. No.9,417,754; which, in turn, claims priority to U.S. ProvisionalApplication No. 61/515,835, filed Aug. 5, 2011, U.S. ProvisionalApplication No. 61/566,577, filed Dec. 2, 2011, U.S. ProvisionalApplication No. 61/569,213, filed Dec. 9, 2011, and U.S. ProvisionalApplication No. 61/581,918, filed Dec. 30, 2011, the entire contents ofall of which are incorporated herein by reference.

If any definitions (e.g., figure reference signs, specialized terms,examples, data, information, etc.) from any related material (e.g.,parent application, other related application, material incorporated byreference, material cited, extrinsic reference, etc.) conflict with thisapplication (e.g., abstract, description, summary, claims, etc.) for anypurpose (e.g., prosecution, claim support, claim interpretation, claimconstruction, etc.), then the definitions in this application shallapply.

BACKGROUND AND FIELD OF INVENTION

Embodiments of the present invention generally relate to touch screens.

BRIEF SUMMARY

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications, a touch screen, and one or more processors incommunication with the at least one non-transitory memory and the touchscreen: displaying a textual word in a virtual display layer; detectinga gesture via the touch screen on the textual word; detecting a firsttouch state; in response to the detection of the first touch state,performing a first function in connection with the textual word, thefirst function including selecting the textual word; detecting a secondtouch state; and in response to the detection of the second touch state,performing a second function in connection with movement of the selectedtextual word, the second function including displaying the selectedtextual word in a plurality of virtual display layers including thevirtual display layer and a separate virtual display layer, such that atleast one of the plurality of virtual display layers is at leastpartially translucent.

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications including a particular application, a touch screen, anactuator, and one or more processors in communication with the at leastone non-transitory memory, the touch screen, and the actuator:displaying on the touch screen an application-specific icon associatedwith the particular application via a home screen, the home screen forchoosing among the plurality of applications; based on a first durationof touch applied to the touch screen on the application-specific iconand a subsequent cessation of the first duration of touch applied to thetouch screen on the application-specific icon being detected: launchingthe particular application; based on a second duration of touch, that isgreater than the first duration, applied to the touch screen on theapplication-specific icon being detected: outputting feedback that isperceptible to touch utilizing the actuator and causing display of atleast one option on the touch screen; based on a touch applied to thetouch screen on the at least one option being detected, performing atleast one action corresponding to the at least one option; and blurringat least a portion of the home screen in relation to the detection ofthe second duration of touch; wherein at least one of: the particularapplication includes a navigation application; the application-specificicon includes a navigation application icon; based on the first durationof touch applied to the touch screen on the navigation application iconand the subsequent cessation of the first duration of touch applied tothe touch screen on the navigation application icon being detected, thenavigation application is launched; and based on the second duration oftouch applied to the touch screen on the navigation application iconbeing detected, the displayed at least one option includes an option foraccess to navigation information utilizing the navigation application;the particular application includes a browser application; theapplication-specific icon includes a browser application icon; based onthe first duration of touch applied to the touch screen on the browserapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the browser application icon beingdetected, the browser application is launched; and based on the secondduration of touch applied to the touch screen on the browser applicationicon being detected, the displayed at least one option includes anoption for access to bookmarks utilizing the browser application; theparticular application includes a media application; theapplication-specific icon includes a media application icon; based onthe first duration of touch applied to the touch screen on the mediaapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the media application icon beingdetected, the media application is launched; and based on the secondduration of touch applied to the touch screen on the media applicationicon being detected, the displayed at least one option includes anoption for selecting at least one track to be played utilizing the mediaapplication; the particular application includes a communicationapplication; the application-specific icon includes a communicationapplication icon; based on the first duration of touch applied to thetouch screen on the communication application icon and the subsequentcessation of the first duration of touch applied to the touch screen onthe communication application icon being detected, the communicationapplication is launched; and based on the second duration of touchapplied to the touch screen on the communication application icon beingdetected, the displayed at least one option includes an option foraccess to one or more communication techniques for a contact; theparticular application includes a calendar application; theapplication-specific icon includes a calendar application icon; based onthe first duration of touch applied to the touch screen on the calendarapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the calendar application icon beingdetected, the calendar application is launched; and based on the secondduration of touch applied to the touch screen on the calendarapplication icon being detected, the displayed at least one optionincludes an option for creating an appointment utilizing the calendarapplication; the particular application includes a camera application;the application-specific icon includes a camera application icon; basedon the first duration of touch applied to the touch screen on the cameraapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the camera application icon beingdetected, the camera application is launched; and based on the secondduration of touch applied to the touch screen on the camera applicationicon being detected, the displayed at least one option includes anoption for setting a camera setting; or the particular applicationincludes a phone application; the application-specific icon includes aphone application icon; based on the first duration of touch applied tothe touch screen on the phone application icon and the subsequentcessation of the first duration of touch applied to the touch screen onthe phone application icon being detected, the phone application islaunched; and based on the second duration of touch applied to the touchscreen on the phone application icon being detected, the displayed atleast one option includes an option for accessing at least one of avoicemail or a favorite, utilizing the phone application.

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications, a touch screen, an actuator, and one or more processors incommunication with the at least one non-transitory memory, the touchscreen, and the actuator: without a navigation application beinglaunched, displaying, on the touch screen, a navigationapplication-specific icon associated with the navigation application viaa home screen, the home screen for choosing among the plurality ofapplications; detecting a first gesture that is applied to the touchscreen on the navigation application-specific icon and that is capableof causing a plurality of touch states in connection with the navigationapplication-specific icon; in response to detection of a cessation of afirst touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, launching the navigation application; based on at least a portionof the detection of the first gesture, blurring at least a portion ofthe home screen other than a menu associated with the navigationapplication-specific icon, for providing a first gesture-touch durationfeedback in connection with the navigation application-specific icon; inresponse to detection of a second touch state of the plurality of touchstates caused by the detection of the first gesture on the navigationapplication-specific icon, permitting access to navigation informationutilizing the menu associated with the navigation application-specificicon; without a browser application being launched, displaying, on thetouch screen, a browser application-specific icon associated with thebrowser application via the home screen; detecting a second gesture thatis applied to the touch screen on the browser application-specific iconand that is capable of causing the plurality of touch states inconnection with the browser application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the second gesture on thebrowser application-specific icon, launching the browser application;based on at least a portion of the detection of the second gesture,blurring at least a portion of the home screen other than a menuassociated with the browser application-specific icon, for providing asecond gesture-touch duration feedback in connection with the browserapplication-specific icon: in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesecond gesture on the browser application-specific icon, permittingaccess to bookmarks utilizing the menu associated with the browserapplication-specific icon; without a media application being launched,displaying, on the touch screen, a media application-specific iconassociated with the media application via the home screen; detecting athird gesture that is applied to the touch screen on the mediaapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the media application-specific icon;in response to detection of a cessation of the first touch state of theplurality of touch states caused by the detection of the third gestureon the media application-specific icon, launching the media application;based on at least a portion of the detection of the third gesture,blurring at least a portion of the home screen other than a menuassociated with the media application-specific icon, for providing athird gesture-touch duration feedback in connection with the mediaapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thethird gesture on the media application-specific icon, permitting accessto at least one track utilizing the menu associated with the mediaapplication-specific icon: without a communication application beinglaunched, displaying, on the touch screen, a communicationapplication-specific icon associated with the communication applicationvia the home screen; detecting a fourth gesture that is applied to thetouch screen on the communication application-specific icon and that iscapable of causing the plurality of touch states in connection with thecommunication application-specific icon; in response to detection of acessation of the first touch state of the plurality of touch statescaused by the detection of the fourth gesture on the communicationapplication-specific icon, launching the communication application;based on at least a portion of the detection of the fourth gesture,blurring at least a portion of the home screen other than a menuassociated with the communication application-specific icon, forproviding a fourth gesture-touch touch duration feedback in connectionwith the communication application-specific icon; in response todetection of the second touch state of the plurality of touch statescaused by the detection of the fourth gesture on the communicationapplication-specific icon, permitting access to one or morecommunication techniques for a contact; without a calendar applicationbeing launched, displaying, on the touch screen, a calendarapplication-specific icon associated with the calendar application viathe home screen; detecting a fifth gesture that is applied to the touchscreen on the calendar application-specific icon and that is capable ofcausing the plurality of touch states in connection with the calendarapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fifth gesture on the calendar application-specificicon, launching the calendar application: based on at least a portion ofthe detection of the fifth gesture, blurring at least a portion of thehome screen other than a menu associated with the calendarapplication-specific icon, for providing a fifth gesture-touch durationfeedback in connection with the calendar application-specific icon: inresponse to detection of the second touch state of the plurality oftouch states caused by the detection of the fifth gesture on thecalendar application-specific icon, permitting creation of anappointment utilizing the menu associated with the calendarapplication-specific icon: without a camera application being launched,displaying, on the touch screen, a camera application-specific iconassociated with the camera application via the home screen; detecting asixth gesture that is applied to the touch screen on the cameraapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the camera application-specific icon;in response to detection of a cessation of the first touch state of theplurality of touch states caused by the detection of the sixth gestureon the camera application-specific icon, launching the cameraapplication: based on at least a portion of the detection of the sixthgesture, blurring at least a portion of the home screen other than amenu associated with the camera application-specific icon, for providinga sixth gesture-touch duration feedback in connection with the cameraapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesixth gesture on the camera application-specific icon, permittingsetting of a camera setting utilizing the menu associated with thecamera application-specific icon; without a phone application beinglaunched, displaying, on the touch screen, a phone application-specificicon associated with the phone application via the home screen;detecting a seventh gesture that is applied to the touch screen on thephone application-specific icon and that is capable of causing theplurality of touch states in connection with the phoneapplication-specific icon: in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the seventh gesture on the phone application-specific icon,launching the phone application; and based on at least a portion of thedetection of the seventh gesture, blurring at least a portion of thehome screen other than a menu associated with the phoneapplication-specific icon, for providing a seventh gesture-touchduration feedback in connection with the phone application-specificicon; and in response to detection of the second touch state of theplurality of touch states caused by the detection of the seventh gestureon the phone application-specific icon, permitting access to at leastone of a voicemail or a favorite utilizing the menu associated with thephone application-specific icon.

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications, a touch screen, an actuator, and one or more processors incommunication with the at least one non-transitory memory, the touchscreen, and the actuator: without a navigation application beinglaunched, displaying, on the touch screen, a navigationapplication-specific icon associated with the navigation application viaa home screen, the home screen for choosing among the plurality ofapplications; detecting a first gesture that is applied to the touchscreen on the navigation application-specific icon and that is capableof causing a plurality of touch states in connection with the navigationapplication-specific icon; based on a cessation of a first touch stateof the plurality of touch states being detected in connection with thenavigation application-specific icon, launching the navigationapplication; without requiring the navigation application to be launchedbeforehand and based on a second touch state of the plurality of touchstates being detected in connection with the navigationapplication-specific icon, displaying at least one navigationapplication-specific option of a navigation application-specific menu onthe home screen that is blurred to appear to be at a greater depth ascompared to the navigation application-specific menu; without a browserapplication being launched, displaying, on the touch screen, a browserapplication-specific icon associated with the browser application viathe home screen; detecting a second gesture that is applied to the touchscreen on the browser application-specific icon and that is capable ofcausing the plurality of touch states in connection with the browserapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thebrowser application-specific icon, launching the browser application;without requiring the browser application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the browser application-specific icon,displaying at least one browser application-specific option of a browserapplication-specific menu on the home screen that is blurred to appearto be at a greater depth as compared to the browser application-specificmenu, the displayed at least one browser application-specific optionincluding an option for access to bookmarks utilizing the browserapplication; without a media application being launched, displaying, onthe touch screen, a media application-specific icon associated with themedia application via the home screen; detecting a third gesture that isapplied to the touch screen on the media application-specific icon andthat is capable of causing the plurality of touch states in connectionwith the media application-specific icon; based on a cessation of thefirst touch state of the plurality of touch states being detected inconnection with the media application-specific icon, launching the mediaapplication; without requiring the media application to be launchedbeforehand and based on the second touch state of the plurality of touchstates being detected in connection with the media application-specificicon, displaying at least one media application-specific option of amedia application-specific menu on the home screen that is blurred toappear to be at a greater depth as compared to the mediaapplication-specific menu, the displayed at least one mediaapplication-specific option including an option for selecting at leastone track utilizing the media application; without a communicationapplication being launched, displaying, on the touch screen, acommunication application-specific icon associated with thecommunication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecommunication application-specific icon, launching the communicationapplication; without requiring the communication application to belaunched beforehand and based on the second touch state of the pluralityof touch states being detected in connection with the communicationapplication-specific icon, displaying at least one communicationapplication-specific option of a communication application-specific menuon the home screen that is blurred to appear to be at a greater depth ascompared to the communication application-specific menu, the displayedat least one communication application-specific option including anoption for access to one or more communication techniques for a contact;without a calendar application being launched, displaying, on the touchscreen, a calendar application-specific icon associated with thecalendar application via the home screen; detecting a fifth gesture thatis applied to the touch screen on the calendar application-specific iconand that is capable of causing the plurality of touch states inconnection with the calendar application-specific icon; based on acessation of the first touch state of the plurality of touch statesbeing detected in connection with the calendar application-specificicon, launching the calendar application: without requiring the calendarapplication to be launched beforehand and based on the second touchstate of the plurality of touch states being detected in connection withthe calendar application-specific icon, displaying at least one calendarapplication-specific option of a calendar application-specific menu onthe home screen that is blurred to appear to be at a greater depth ascompared to the calendar application-specific menu, the displayed atleast one calendar application-specific option including an option forcreating an appointment utilizing the calendar application; without acamera application being launched, displaying, on the touch screen, acamera application-specific icon associated with the camera applicationvia the home screen; detecting a sixth gesture that is applied to thetouch screen on the camera application-specific icon and that is capableof causing the plurality of touch states in connection with the cameraapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecamera application-specific icon, launching the camera application;without requiring the camera application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the camera application-specific icon,displaying at least one camera application-specific option of a cameraapplication-specific menu on the home screen that is blurred to appearto be at a greater depth as compared to the camera application-specificmenu, the displayed at least one camera application-specific optionincluding an option for setting a camera setting; without a phoneapplication being launched, displaying, on the touch screen, a phoneapplication-specific icon associated with the phone application via thehome screen; detecting a seventh gesture that is applied to the touchscreen on the phone application-specific icon and that is capable ofcausing the plurality of touch states in connection with the phoneapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thephone application-specific icon, launching the phone application; andwithout requiring the phone application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the phone application-specific icon,displaying at least one phone application-specific option of a phoneapplication-specific menu on the home screen that is blurred to appearto be at a greater depth as compared to the phone application-specificmenu, the displayed at least one phone application-specific optionincluding an option for accessing at least one of a voicemail or afavorite utilizing the phone application.

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications, a touch screen, an actuator, and one or more processors incommunication with the at least one non-transitory memory, the touchscreen, and the actuator: without a navigation application beinglaunched, displaying, on the touch screen, a navigationapplication-specific icon associated with the navigation application viaa home screen, the home screen for choosing among the plurality ofapplications; detecting a first gesture that is applied to the touchscreen on the navigation application-specific icon and that is capableof causing a plurality of touch states in connection with the navigationapplication-specific icon; in response to detection of a cessation of afirst touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, launching the navigation application; based on at least a portionof the detection of the first gesture, blurring at least a portion ofthe home screen other than a navigation application-specific menu, forproviding a first gesture-touch duration feedback in connection with thenavigation application-specific icon; in response to detection of asecond touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, displaying at least one navigation application-specific option ofthe navigation application-specific menu, the displayed at least onenavigation application-specific option including an option for access tonavigation information utilizing the navigation application; without abrowser application being launched, displaying, on the touch screen, abrowser application-specific icon associated with the browserapplication via the home screen; detecting a second gesture that isapplied to the touch screen on the browser application-specific icon andthat is capable of causing the plurality of touch states in connectionwith the browser application-specific icon; in response to detection ofa cessation of the first touch state of the plurality of touch statescaused by the detection of the second gesture on the browserapplication-specific icon, launching the browser application; based onat least a portion of the detection of the second gesture, blurring atleast a portion of the home screen other than a browserapplication-specific menu, for providing a second gesture-touch durationfeedback in connection with the browser application-specific icon; inresponse to detection of the second touch state of the plurality oftouch states caused by the detection of the second gesture on thebrowser application-specific icon, displaying at least one browserapplication-specific option of the browser application-specific menu,the displayed at least one browser application-specific option includingan option for access to bookmarks utilizing the browser application;without a media application being launched, displaying, on the touchscreen, a media application-specific icon associated with the mediaapplication via the home screen; detecting a third gesture that isapplied to the touch screen on the media application-specific icon andthat is capable of causing the plurality of touch states in connectionwith the media application-specific icon; in response to detection of acessation of the first touch state of the plurality of touch statescaused by the detection of the third gesture on the mediaapplication-specific icon, launching the media application; based on atleast a portion of the detection of the third gesture, blurring at leasta portion of the home screen other than a media application-specificmenu, for providing a third gesture-touch duration feedback inconnection with the media application-specific icon; in response todetection of the second touch state of the plurality of touch statescaused by the detection of the third gesture on the mediaapplication-specific icon, displaying at least one mediaapplication-specific option of the media application-specific menu, thedisplayed at least one media application-specific option including anoption for selecting at least one track utilizing the media application;without a communication application being launched, displaying, on thetouch screen, a communication application-specific icon associated withthe communication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, launching the communication application;based on at least a portion of the detection of the fourth gesture,blurring at least a portion of the home screen other than acommunication application-specific menu, for providing a fourthgesture-touch touch duration feedback in connection with thecommunication application-specific icon; in response to detection of thesecond touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, displaying at least one communicationapplication-specific option of the communication application-specificmenu, the displayed at least one communication application-specificoption including an option for access to one or more communicationtechniques for a contact; without a calendar application being launched,displaying, on the touch screen, a calendar application-specific iconassociated with the calendar application via the home screen; detectinga fifth gesture that is applied to the touch screen on the calendarapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the calendar application-specificicon; in response to detection of a cessation of the first touch stateof the plurality of touch states caused by the detection of the fifthgesture on the calendar application-specific icon, launching thecalendar application; based on at least a portion of the detection ofthe filth gesture, blurring at least a portion of the home screen otherthan a calendar application-specific menu, for providing a fifthgesture-touch duration feedback in connection with the calendarapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thefifth gesture on the calendar application-specific icon, displaying atleast one calendar application-specific option of the calendarapplication-specific menu, the displayed at least one calendarapplication-specific option including an option for creating anappointment utilizing the calendar application; without a cameraapplication being launched, displaying, on the touch screen, a cameraapplication-specific icon associated with the camera application via thehome screen; detecting a sixth gesture that is applied to the touchscreen on the camera application-specific icon and that is capable ofcausing the plurality of touch states in connection with the cameraapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the sixth gesture on the camera application-specific icon,launching the camera application; based on at least a portion of thedetection of the sixth gesture, blurring at least a portion of the homescreen other than a camera application-specific menu, for providing asixth gesture-touch duration feedback in connection with the cameraapplication-specific icon: in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesixth gesture on the camera application-specific icon, displaying atleast one camera application-specific option of the cameraapplication-specific menu, the displayed at least one cameraapplication-specific option including an option for setting a camerasetting; without a phone application being launched, displaying, on thetouch screen, a phone application-specific icon associated with thephone application via the home screen; detecting a seventh gesture thatis applied to the touch screen on the phone application-specific iconand that is capable of causing the plurality of touch states inconnection with the phone application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the seventh gesture on the phoneapplication-specific icon, launching the phone application; based on atleast a portion of the detection of the seventh gesture, blurring atleast a portion of the home screen other than a phoneapplication-specific menu, for providing a seventh gesture-touchduration feedback in connection with the phone application-specificicon; and in response to detection of the second touch state of theplurality of touch states caused by the detection of the seventh gestureon the phone application-specific icon, displaying at least one phoneapplication-specific option of the phone application-specific menu, thedisplayed at least one phone application-specific option including anoption for accessing at least one of a voicemail or a favorite utilizingthe phone application.

In one embodiment, a method is provided, comprising: at a device with atleast one non-transitory memory, a touch screen, and one or moreprocessors in communication with the at least one non-transitory memory,and the touch screen: displaying an object utilizing an interface of aparticular application; detecting a press gesture via the touch screenon the object; in response to detection of a cessation of the pressgesture via the touch screen on the object based on a duration of thepress gesture being detected to not exceed a duration threshold:displaying information associated with the object utilizing anotherinterface of the particular application; and based on at least a portionof the press gesture being detected via the touch screen on the objectand the duration of the press gesture being detected to exceed theduration threshold: displaying a menu including at least one option for,in response to detection of a selection thereof, performing anoperation, and displaying at least a portion of the informationassociated with the object, where, based on the at least portion of thepress gesture being detected via the touch screen on the object and theduration of the press gesture being detected to exceed the durationthreshold: the menu and the at least portion of the information aredisplayed in at least one first virtual display layer which appearsabove at least one second virtual display layer, the at least one secondvirtual display layer includes at least a portion of the interface ofthe particular application that remains at least partially visible, andthe at least portion of the interface of the particular application ofthe at least one second virtual display layer is altered, by at leastone of blurring or fogging, to appear at a first depth that is greaterthan a second depth of at least one of the menu or the at least portionof the information.

In one embodiment, a method is provided, comprising: at a device with atleast one non-transitory memory, a touch screen, and one or moreprocessors in communication with the at least one non-transitory memory,and the touch screen: displaying a message item utilizing an interfaceof a communication application; detecting a press gesture via the touchscreen on the message item; in response to detection of a cessation ofthe press gesture via the touch screen on the message item and aduration of the press gesture being detected to not exceed a durationthreshold: displaying at least a portion of a message associated withthe message item utilizing another interface of the communicationapplication; and in response to at least a portion of the press gesturebeing detected via the touch screen on the message item and the durationof the press gesture being detected to exceed the duration threshold:displaying a menu including at least one option for, in response todetection of a selection thereof, performing an operation, anddisplaying at least part of the at least portion of the messageassociated with the message item, where the menu and the at least partof the at least portion of the message are displayed in at least onefirst virtual display layer which appears above at least one secondvirtual display layer that includes at least a portion of the interfaceof the communication application that remains at least partially visibleand is altered, by at least one of blurring or fogging, to appear at afirst depth that is greater than a second depth of at least one of themenu or the at least part of the at least portion of the message.

In one embodiment, a method is provided, comprising: at a deviceincluding at least one non-transitory memory, a touch screen, and one ormore processors in communication with the at least one non-transitorymemory and the touch screen: displaying a hyperlink utilizing aninterface of a network browser application; detecting a press gesturevia the touch screen on the hyperlink; in response to detection of acessation of the press gesture via the touch screen on the hyperlink anda duration of the press gesture being detected to not exceed a durationthreshold: displaying information associated with the hyperlinkutilizing another interface of the network browser application; andbased on at least a portion of the press gesture being detected via thetouch screen on the hyperlink and the duration of the press gesturebeing detected to exceed the duration threshold: displaying a menuincluding at least one option for, in response to detection of aselection thereof, performing an operation on the hyperlink, anddisplaying at least a portion of the information associated with thehyperlink, where the menu and the at least portion of the informationare displayed in at least one first virtual display layer which appearsabove at least one second virtual display layer that includes at least aportion of the interface of the network browser application that remainsat least partially visible and is altered, by at least fading, to appearat a first depth that is greater than a second depth of at least one ofthe menu or the at least portion of the information.

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications including a particular application, a touch screen, and oneor more processors in communication with the at least one non-transitorymemory and the touch screen: displaying on the touch screen anapplication-specific icon associated with the particular application viaa home screen, the home screen for choosing among the plurality ofapplications; based on a first duration of touch applied to the touchscreen on the application-specific icon and a subsequent cessation ofthe first duration of touch applied to the touch screen on theapplication-specific icon being detected: launching the particularapplication; based on a second duration of touch, that is greater thanthe first duration, applied to the touch screen on theapplication-specific icon being detected: causing display of at leastone option on the touch screen; and based on a touch applied to thetouch screen on the at least one option being detected, performing atleast one action corresponding to the at least one option; wherein atleast a portion of the home screen is faded in relation to the detectionof the second duration of touch; wherein at least one of: the particularapplication includes a navigation application; the application-specificicon includes a navigation application icon; based on the first durationof touch applied to the touch screen on the navigation application iconand the subsequent cessation of the first duration of touch applied tothe touch screen on the navigation application icon being detected, thenavigation application is launched; and based on the second duration oftouch applied to the touch screen on the navigation application iconbeing detected, the displayed at least one option includes an option foraccess to navigation information utilizing the navigation application;the particular application includes a browser application; theapplication-specific icon includes a browser application icon; based onthe first duration of touch applied to the touch screen on the browserapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the browser application icon beingdetected, the browser application is launched; and based on the secondduration of touch applied to the touch screen on the browser applicationicon being detected, the displayed at least one option includes anoption for performing an operation utilizing the browser application:the particular application includes a media application; theapplication-specific icon includes a media application icon; based onthe first duration of touch applied to the touch screen on the mediaapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the media application icon beingdetected, the media application is launched; and based on the secondduration of touch applied to the touch screen on the media applicationicon being detected, the displayed at least one option includes anoption for accessing at least one track to be played utilizing the mediaapplication; the particular application includes a communicationapplication; the application-specific icon includes a communicationapplication icon; based on the first duration of touch applied to thetouch screen on the communication application icon and the subsequentcessation of the first duration of touch applied to the touch screen onthe communication application icon being detected, the communicationapplication is launched; and based on the second duration of touchapplied to the touch screen on the communication application icon beingdetected, the displayed at least one option includes an option foraccessing at least one feature utilizing the communication application;the particular application includes a calendar application; theapplication-specific icon includes a calendar application icon; based onthe first duration of touch applied to the touch screen on the calendarapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the calendar application icon beingdetected, the calendar application is launched; and based on the secondduration of touch applied to the touch screen on the calendarapplication icon being detected, the displayed at least one optionincludes an option for creating an event utilizing the calendarapplication; the particular application includes a camera application;the application-specific icon includes a camera application icon: basedon the first duration of touch applied to the touch screen on the cameraapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the camera application icon beingdetected, the camera application is launched; and based on the secondduration of touch applied to the touch screen on the camera applicationicon being detected, the displayed at least one option includes anoption for setting a camera setting; or the particular applicationincludes a phone application: the application-specific icon includes aphone application icon; based on the first duration of touch applied tothe touch screen on the phone application icon and the subsequentcessation of the first duration of touch applied to the touch screen onthe phone application icon being detected, the phone application islaunched; and based on the second duration of touch applied to the touchscreen on the phone application icon being detected, the displayed atleast one option includes an option for accessing phone-relatedinformation, utilizing the phone application.

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications, a touch screen, and one or more processors incommunication with the at least one non-transitory memory and the touchscreen: without a navigation application being launched, displaying, onthe touch screen, a navigation application-specific icon associated withthe navigation application via a home screen, the home screen forchoosing among the plurality of applications; detecting a first gesturethat is applied to the touch screen on the navigationapplication-specific icon and that is capable of causing a plurality oftouch states in connection with the navigation application-specificicon: in response to detection of a cessation of a first touch state ofthe plurality of touch states caused by the detection of the firstgesture on the navigation application-specific icon, launching thenavigation application; based on at least a portion of the detection ofthe first gesture, fading at least a portion of the home screen, forproviding a first gesture-touch duration feedback in connection with thenavigation application-specific icon; in response to detection of asecond touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, displaying a menu associated with the navigationapplication-specific icon to permit access to navigation informationutilizing the menu associated with the navigation application-specificicon; without a browser application being launched, displaying, on thetouch screen, a browser application-specific icon associated with thebrowser application via the home screen; detecting a second gesture thatis applied to the touch screen on the browser application-specific iconand that is capable of causing the plurality of touch states inconnection with the browser application-specific icon: in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the second gesture on thebrowser application-specific icon, launching the browser application;based on at least a portion of the detection of the second gesture,fading at least a portion of the home screen, for providing a secondgesture-touch duration feedback in connection with the browserapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesecond gesture on the browser application-specific icon, displaying amenu associated with the browser application-specific icon to permitaccess to an operation utilizing the menu associated with the browserapplication-specific icon; without a media application being launched,displaying, on the touch screen, a media application-specific iconassociated with the media application via the home screen; detecting athird gesture that is applied to the touch screen on the mediaapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the media application-specific icon:in response to detection of a cessation of the first touch state of theplurality of touch states caused by the detection of the third gestureon the media application-specific icon, launching the media application:based on at least a portion of the detection of the third gesture,fading at least a portion of the home screen, for providing a thirdgesture-touch duration feedback in connection with the mediaapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thethird gesture on the media application-specific icon, displaying a menuassociated with the media application-specific icon to permit access toat least one track utilizing the menu associated with the mediaapplication-specific icon; without a communication application beinglaunched, displaying, on the touch screen, a communicationapplication-specific icon associated with the communication applicationvia the home screen; detecting a fourth gesture that is applied to thetouch screen on the communication application-specific icon and that iscapable of causing the plurality of touch states in connection with thecommunication application-specific icon; in response to detection of acessation of the first touch state of the plurality of touch statescaused by the detection of the fourth gesture on the communicationapplication-specific icon, launching the communication application;based on at least a portion of the detection of the fourth gesture,fading at least a portion of the home screen, for providing a fourthgesture-touch touch duration feedback in connection with thecommunication application-specific icon; in response to detection of thesecond touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, displaying a menu associated with thecommunication application-specific icon to permit access to at least onefeature utilizing the communication application: without a calendarapplication being launched, displaying, on the touch screen, a calendarapplication-specific icon associated with the calendar application viathe home screen; detecting a fifth gesture that is applied to the touchscreen on the calendar application-specific icon and that is capable ofcausing the plurality of touch states in connection with the calendarapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fifth gesture on the calendar application-specificicon, launching the calendar application; based on at least a portion ofthe detection of the fifth gesture, fading at least a portion of thehome screen, for providing a fifth gesture-touch duration feedback inconnection with the calendar application-specific icon; in response todetection of the second touch state of the plurality of touch statescaused by the detection of the fifth gesture on the calendarapplication-specific icon, displaying a menu associated with thecalendar application-specific icon to permit access to an operation forcreation of an event utilizing the menu associated with the calendarapplication-specific icon; without a camera application being launched,displaying, on the touch screen, a camera application-specific iconassociated with the camera application via the home screen; detecting asixth gesture that is applied to the touch screen on the cameraapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the camera application-specific icon:in response to detection of a cessation of the first touch state of theplurality of touch states caused by the detection of the sixth gestureon the camera application-specific icon, launching the cameraapplication; based on at least a portion of the detection of the sixthgesture, fading at least a portion of the home screen, for providing asixth gesture-touch duration feedback in connection with the cameraapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesixth gesture on the camera application-specific icon, displaying a menuassociated with the camera application-specific icon to permit access toan operation for setting a camera setting utilizing the menu associatedwith the camera application-specific icon; without a phone applicationbeing launched, displaying, on the touch screen, a phoneapplication-specific icon associated with the phone application via thehome screen; detecting a seventh gesture that is applied to the touchscreen on the phone application-specific icon and that is capable ofcausing the plurality of touch states in connection with the phoneapplication-specific icon: in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the seventh gesture on the phone application-specific icon,launching the phone application; and based on at least a portion of thedetection of the seventh gesture, fading at least a portion of the homescreen, for providing a seventh gesture-touch duration feedback inconnection with the phone application-specific icon; and in response todetection of the second touch state of the plurality of touch statescaused by the detection of the seventh gesture on the phoneapplication-specific icon, displaying a menu associated with the phoneapplication-specific icon to permit access to phone-related informationutilizing the menu associated with the phone application-specific icon.

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications, a touch screen, and one or more processors incommunication with the at least one non-transitory memory and the touchscreen: without a navigation application being launched, displaying, onthe touch screen, a navigation application-specific icon associated withthe navigation application via a home screen, the home screen forchoosing among the plurality of applications; detecting a first gesturethat is applied to the touch screen on the navigationapplication-specific icon and that is capable of causing a plurality oftouch states in connection with the navigation application-specificicon; based on a cessation of a first touch state of the plurality oftouch states being detected in connection with the navigationapplication-specific icon, launching the navigation application; withoutrequiring the navigation application to be launched beforehand and basedon a second touch state of the plurality of touch states being detectedin connection with the navigation application-specific icon, displayingat least one navigation application-specific option of a navigationapplication-specific menu such that at least a portion of the homescreen thereunder is faded to appear to be at a greater depth ascompared to the navigation application-specific menu; without a browserapplication being launched, displaying, on the touch screen, a browserapplication-specific icon associated with the browser application viathe home screen: detecting a second gesture that is applied to the touchscreen on the browser application-specific icon and that is capable ofcausing the plurality of touch states in connection with the browserapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thebrowser application-specific icon, launching the browser application;without requiring the browser application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the browser application-specific icon,displaying at least one browser application-specific option of a browserapplication-specific menu such that at least a portion of the homescreen thereunder is faded to appear to be at a greater depth ascompared to the browser application-specific menu, the displayed atleast one browser application-specific option including an option forperforming an operation utilizing the browser application; without amedia application being launched, displaying, on the touch screen, amedia application-specific icon associated with the media applicationvia the home screen; detecting a third gesture that is applied to thetouch screen on the media application-specific icon and that is capableof causing the plurality of touch states in connection with the mediaapplication-specific icon: based on a cessation of the first touch stateof the plurality of touch states being detected in connection with themedia application-specific icon, launching the media application;without requiring the media application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the media application-specific icon,displaying at least one media application-specific option of a mediaapplication-specific menu such that at least a portion of the homescreen thereunder is faded to appear to be at a greater depth ascompared to the media application-specific menu, the displayed at leastone media application-specific option including an option for accessingat least one track utilizing the media application; without acommunication application being launched, displaying, on the touchscreen, a communication application-specific icon associated with thecommunication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon: based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecommunication application-specific icon, launching the communicationapplication; without requiring the communication application to belaunched beforehand and based on the second touch state of the pluralityof touch states being detected in connection with the communicationapplication-specific icon, displaying at least one communicationapplication-specific option of a communication application-specific menusuch that at least a portion of the home screen thereunder is faded toappear to be at a greater depth as compared to the communicationapplication-specific menu, the displayed at least one communicationapplication-specific option including an option for access to at leastone feature utilizing the communication application; without a calendarapplication being launched, displaying, on the touch screen, a calendarapplication-specific icon associated with the calendar application viathe home screen; detecting a fifth gesture that is applied to the touchscreen on the calendar application-specific icon and that is capable ofcausing the plurality of touch states in connection with the calendarapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecalendar application-specific icon, launching the calendar application;without requiring the calendar application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the calendar application-specific icon,displaying at least one calendar application-specific option of acalendar application-specific menu such that at least a portion of thehome screen thereunder is faded to appear to be at a greater depth ascompared to the calendar application-specific menu, the displayed atleast one calendar application-specific option including an option forcreating an event utilizing the calendar application; without a cameraapplication being launched, displaying, on the touch screen, a cameraapplication-specific icon associated with the camera application via thehome screen; detecting a sixth gesture that is applied to the touchscreen on the camera application-specific icon and that is capable ofcausing the plurality of touch states in connection with the cameraapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecamera application-specific icon, launching the camera application;without requiring the camera application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the camera application-specific icon,displaying at least one camera application-specific option of a cameraapplication-specific menu such that at least a portion of the homescreen thereunder is faded to appear to be at a greater depth ascompared to the camera application-specific menu, the displayed at leastone camera application-specific option including an option for setting acamera setting; without a phone application being launched, displaying,on the touch screen, a phone application-specific icon associated withthe phone application via the home screen; detecting a seventh gesturethat is applied to the touch screen on the phone application-specificicon and that is capable of causing the plurality of touch states inconnection with the phone application-specific icon: based on acessation of the first touch state of the plurality of touch statesbeing detected in connection with the phone application-specific icon,launching the phone application; and without requiring the phoneapplication to be launched beforehand and based on the second touchstate of the plurality of touch states being detected in connection withthe phone application-specific icon, displaying at least one phoneapplication-specific option of a phone application-specific menu suchthat at least a portion of the home screen thereunder is faded to appearto be at a greater depth as compared to the phone application-specificmenu, the displayed at least one phone application-specific optionincluding an option for accessing phone-related information utilizingthe phone application.

In one embodiment, a method is provided, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications, a touch screen, and one or more processors incommunication with the at least one non-transitory memory and the touchscreen: without a navigation application being launched, displaying, onthe touch screen, a navigation application-specific icon associated withthe navigation application via a home screen, the home screen forchoosing among the plurality of applications; detecting a first gesturethat is applied to the touch screen on the navigationapplication-specific icon and that is capable of causing a plurality oftouch states in connection with the navigation application-specificicon; in response to detection of a cessation of a first touch state ofthe plurality of touch states caused by the detection of the firstgesture on the navigation application-specific icon, launching thenavigation application; based on at least a portion of the detection ofthe first gesture, fading at least a portion of the home screen under anavigation application-specific menu, for providing a firstgesture-touch duration feedback in connection with the navigationapplication-specific icon; in response to detection of a second touchstate of the plurality of touch states caused by the detection of thefirst gesture on the navigation application-specific icon, displaying atleast one navigation application-specific option of the navigationapplication-specific menu, the displayed at least one navigationapplication-specific option including an option for access to navigationinformation utilizing the navigation application; without a browserapplication being launched, displaying, on the touch screen, a browserapplication-specific icon associated with the browser application viathe home screen; detecting a second gesture that is applied to the touchscreen on the browser application-specific icon and that is capable ofcausing the plurality of touch states in connection with the browserapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the second gesture on the browser application-specificicon, launching the browser application; based on at least a portion ofthe detection of the second gesture, fading at least a portion of thehome screen under a browser application-specific menu, for providing asecond gesture-touch duration feedback in connection with the browserapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesecond gesture on the browser application-specific icon, displaying atleast one browser application-specific option of the browserapplication-specific menu, the displayed at least one browserapplication-specific option including an option for performing anoperation utilizing the browser application: without a media applicationbeing launched, displaying, on the touch screen, a mediaapplication-specific icon associated with the media application via thehome screen; detecting a third gesture that is applied to the touchscreen on the media application-specific icon and that is capable ofcausing the plurality of touch states in connection with the mediaapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the third gesture on the media application-specific icon,launching the media application; based on at least a portion of thedetection of the third gesture, fading at least a portion of the homescreen under a media application-specific menu, for providing a thirdgesture-touch duration feedback in connection with the mediaapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thethird gesture on the media application-specific icon, displaying atleast one media application-specific option of the mediaapplication-specific menu, the displayed at least one mediaapplication-specific option including an option for accessing at leastone track utilizing the media application; without a communicationapplication being launched, displaying, on the touch screen, acommunication application-specific icon associated with thecommunication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, launching the communication application:based on at least a portion of the detection of the fourth gesture,fading at least a portion of the home screen under a communicationapplication-specific menu, for providing a fourth gesture-touch touchduration feedback in connection with the communicationapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thefourth gesture on the communication application-specific icon,displaying at least one communication application-specific option of thecommunication application-specific menu, the displayed at least onecommunication application-specific option including an option for accessto at least one feature utilizing the communication application: withouta calendar application being launched, displaying, on the touch screen,a calendar application-specific icon associated with the calendarapplication via the home screen; detecting a fifth gesture that isapplied to the touch screen on the calendar application-specific iconand that is capable of causing the plurality of touch states inconnection with the calendar application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the fifth gesture on thecalendar application-specific icon, launching the calendar application;based on at least a portion of the detection of the fifth gesture,fading at least a portion of the home screen under a calendarapplication-specific menu, for providing a fifth gesture-touch durationfeedback in connection with the calendar application-specific icon; inresponse to detection of the second touch state of the plurality oftouch states caused by the detection of the fifth gesture on thecalendar application-specific icon, displaying at least one calendarapplication-specific option of the calendar application-specific menu,the displayed at least one calendar application-specific optionincluding an option for creating an event utilizing the calendarapplication; without a camera application being launched, displaying, onthe touch screen, a camera application-specific icon associated with thecamera application via the home screen; detecting a sixth gesture thatis applied to the touch screen on the camera application-specific iconand that is capable of causing the plurality of touch states inconnection with the camera application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the sixth gesture on the cameraapplication-specific icon, launching the camera application; based on atleast a portion of the detection of the sixth gesture, fading at least aportion of the home screen under a camera application-specific menu, forproviding a sixth gesture-touch duration feedback in connection with thecamera application-specific icon; in response to detection of the secondtouch state of the plurality of touch states caused by the detection ofthe sixth gesture on the camera application-specific icon, displaying atleast one camera application-specific option of the cameraapplication-specific menu, the displayed at least one cameraapplication-specific option including an option for setting a camerasetting; without a phone application being launched, displaying, on thetouch screen, a phone application-specific icon associated with thephone application via the home screen; detecting a seventh gesture thatis applied to the touch screen on the phone application-specific iconand that is capable of causing the plurality of touch states inconnection with the phone application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the seventh gesture on the phoneapplication-specific icon, launching the phone application: based on atleast a portion of the detection of the seventh gesture, fading at leasta portion of the home screen under a phone application-specific menu,for providing a seventh gesture-touch duration feedback in connectionwith the phone application-specific icon; and in response to detectionof the second touch state of the plurality of touch states caused by thedetection of the seventh gesture on the phone application-specific icon,displaying at least one phone application-specific option of the phoneapplication-specific menu, the displayed at least one phoneapplication-specific option including an option for accessingphone-related information utilizing the phone application.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

So that the features of various embodiments of the present invention canbe understood, a more detailed description, briefly summarized above,may be had by reference to various embodiments, some of which areillustrated in the accompanying drawings. It is to be noted, however,that the accompanying drawings illustrate only embodiments and aretherefore not to be considered limiting of the scope of variousembodiments of the invention, for the invention may admit to othereffective embodiments. The following detailed description makesreference to the accompanying drawings that are now briefly described.

So that the features of various embodiments of the present invention canbe understood, a more detailed description, briefly summarized above,may be had by reference to various embodiments, some of which areillustrated in the accompanying drawings. It is to be noted, however,that the accompanying drawings illustrate only embodiments and aretherefore not to be considered limiting of the scope of the invention,for the invention may admit to other effective embodiments. Thefollowing detailed description makes reference to the accompanyingdrawings that are now briefly described.

FIG. 1 illustrates a network architecture, in accordance with oneembodiment.

FIG. 2 shows a representative hardware environment that may beassociated with the servers and/or clients of FIG. 1, in accordance withone embodiment.

FIG. 3 shows a method for altering a user experience based on a receivedsignal, in accordance with one embodiment.

FIG. 4 shows a method for defining a selection made within a userinterface based in part on contact pressure, in accordance with oneembodiment.

FIG. 5 shows a pressure-sensitive user interface for making a selection,in accordance with one embodiment.

FIG. 6 shows a method for determining the context of a contactpressure-based selection and choosing an appropriate selection function,in accordance with one embodiment.

FIG. 7 shows a device having a backtouch interface, in accordance withone embodiment.

FIG. 8 shows a method for providing feedback to the user of a backtouchinterface, in accordance with one embodiment.

FIG. 9 shows a pressure-sensitive user interface for making a selectionusing a backtouch interface, in accordance with one embodiment.

FIG. 10 shows a user interface for defining settings associated with abacktouch interface, in accordance with one embodiment.

FIG. 11 shows a user interface for defining settings associated with apressure-sensitive interface, in accordance with one embodiment.

FIG. 12 shows a method for assisting a user in defining touch states, inaccordance with one embodiment.

FIG. 13 shows a user interface for assisting a user in defining touchstates, in accordance with one embodiment.

FIG. 14 shows a user interface for indicating that a backtouch orpressure-sensitive interface is activated, in accordance with oneembodiment.

FIG. 15 shows a user interface for defining a backtouch feedback style,in accordance with one embodiment.

FIG. 16 shows an alternative method for defining a selection made withina user interface based in part on contact pressure, in accordance withone embodiment.

FIG. 17 shows a user interface for performing operations on a selection,in accordance with one embodiment.

FIG. 18 shows a method for utilizing contact pressure-based gestures, inaccordance with one embodiment.

FIG. 19 shows an example of a contact pressure-based gesture forscrolling a text field, in accordance with one embodiment.

FIG. 20 shows an example of a multitouch pressure gesture for indicatinga direction, in accordance with one embodiment.

FIG. 21 shows an example of a multitouch pressure gesture for indicatinga rotation, in accordance with one embodiment.

FIG. 22 shows a 3D layered user interface, in accordance with oneembodiment.

FIG. 23 shows exemplary pattern-based gestures, in accordance with oneembodiment.

FIG. 24 shows a user interface for defining custom gestures, inaccordance with one embodiment.

While the invention is susceptible to various modifications,combinations, and alternative forms, various embodiments thereof areshown by way of example in the drawings and will herein be described indetail. It should be understood, however, that the accompanying drawingsand detailed description are not intended to limit the invention to theparticular form disclosed, but on the contrary, the intention is tocover all modifications, combinations, equivalents and alternativesfalling within the spirit and scope of the present invention as definedby the relevant claims.

DETAILED DESCRIPTION

Terms that are special to the field of the invention or specific to thisdescription may, in some circumstances, be defined in this description.Further, the first use of such terms (which may include the definitionof that term) may be highlighted in italics just for the convenience ofthe reader. Similarly, some terms may be capitalized, again just for theconvenience of the reader. It should be noted that such use of italicsand/or capitalization and/or other formatting, highlighting etc, byitself, should not be construed as somehow limiting such terms: beyondany given definition, and/or to any specific embodiments disclosedherein, etc.

In this description there may be multiple figures that depict similarstructures with similar parts or components. Thus, as an example, toavoid confusion an Object in FIG. 1 may be labeled and/or referenced as“Object (1)” and a similar, but not identical, Object in FIG. 2 islabeled and/or referenced as “Object (2)”, etc. Again, it should benoted that use of such labeling and reference manner, by itself, shouldnot be construed as somehow limiting such terms: beyond any givendefinition, and/or to any specific embodiments disclosed herein, etc.

In the following detailed description and in the accompanying drawings,specific terminology and images are used in order to provide a thoroughunderstanding. In some instances, the terminology and images may implyspecific details that are not required to practice all embodiments.Similarly, the embodiments described and illustrated are representativeand should not be construed as precise representations, as there areprospective variations on what is disclosed that may be obvious tosomeone with skill in the art. Thus this disclosure is not limited tothe specific embodiments described and shown but embraces allprospective variations that fall within its scope. For brevity, not allsteps may be detailed, where such details will be known to someone withskill in the art having benefit of this disclosure.

In the following detailed description and in the accompanying drawings,some embodiments and their constituent parts may have been simplifiedfor clarity of explanation. In some cases, a complex system may bebroken down into its constituent parts and pieces and each part or pieceexplained separately. The explanations for each part or piece maypossibly use a separate figure along with accompanying text to describevariations and alternative implementations. In some cases, complexelements have been simplified to more clearly define their function. Inmany cases, a system may be comprised of multiple complex elements witheach element being a more complex version of a simple part or piece thathas been explained separately. It is not possible to describe everypossible combination of complex elements in all possible systems. Thus,the description herein is not limited to just the specific embodimentsof parts or pieces described with each figure or in an accompanyingexplanation, or even those example systems described, but rather thepossible combinations of complex elements based on the parts and piecesdescribed.

Definitions

A computer system (e.g., a host system, host, computer, etc.) mayinclude one or more storage systems (or storage subsystems, disksystems, disk subsystems, etc.) that may include storage arrays thatinclude storage devices. A storage device may include a solid-statestorage device, hard-disk drive (HD or HDD), or other device (e.g.,tape, optical media, etc.).

A solid-state storage device may refer to a solid-state disk (SSD), butthe solid-state storage device is not necessarily an SSD. A solid-statestorage device may, for example, comprise memory devices such as flashmemory devices (e.g., NAND, NOR, MLC, SLC, etc.), but may also compriseother forms of solid-state memory devices or memory components (e.g.,SRAM, DRAM, MRAM, volatile memory, non-volatile memory, etc.), acombination of different types of solid-state components and/or othermemory devices, or a combination of solid-state memory with other typesof storage devices (e.g., hybrid disk, etc.). An SSD may be in aform-factor that is a drop-in replacement for a hard-disk (3.5″, 2.5″form factors, etc.) or may be in any other form-factor or with anyinterface (e.g., Compact Flash CF, MultiMediaCard MMC, miniSD, MemoryStick, SmartMedia, TransFlash, Secure Digital SD, DIMM or other memorymodule form factor, PCI Express Card, mini PCI-E card, etc.). An SSD mayuse a standard storage interface (e.g., IDE, SAS, SATA, etc.) or an IObus interface (e.g., PCI, PCI-E, USB, LightPeak, etc.), a networkinginterface (e.g., Ethernet, FCoE, Infiniband, etc.), a CPU bus interface(e.g., Intel QPI, HyperTransport, etc.), or other interface (e.g., PCI-Eover Ethernet, etc.). An SSD in a storage array may have a capacity ofmore than 100 Gbytes and contain tens of NAND flash memory chips. Atypical 1 Gbit NAND flash memory chip may contain 1024 flash blocks witheach flash block containing 64 flash pages and each flash pagecontaining 2 kbytes.

Storage arrays may also include a combination of SSD and HDD, orcombinations of various storage devices (e.g., magnetic, optical, tape,solid-state, etc.).

A solid-state storage device may use a disk controller (e.g., storagecontroller, controller, ASIC, other chips component(s), etc.) to providethe computer system with a standard storage (e.g., disk, storagenetworking, etc.) interface (e.g., IDE, SATA, SAS, Fibre Channel (FC),etc.), a standard peripheral (e.g., IO bus, IO attach, etc.) interface(e.g., PCI-E, USB, PCI Express, PCI, etc.), other standard interface(e.g., Ethernet, wireless 802.11, etc.), a proprietary (e.g.,non-standard, etc.) interface, a combination of these (e.g., PCI-E overEthernet, FC over Ethernet (FCoE), etc.), or other storage, networking,interconnect interface(s) etc.

A storage array controller (often also called disk controller, host-busadapter, etc.) may be logically located between the computer system andone or more SSDs or HDDs in a disk subsystem. In the context of thepresent description, the use of the term disk controller has beenavoided as a term to describe a controller that controls one or moredisks. The term storage array controller has been used herein for acontroller that controls one or more disks. In some cases, each disk(HDD or SSD etc.) may have its own disk controller, thus causingpotential confusion over terms. Alternative terms for storage arraycontroller may include host-bus adapter, host adapter, host controller.However, the term host-bus adapter (often abbreviated HBA) and similarterms have been avoided herein to avoid confusion with HBA used here forhost block address.

An SSD may include its own SSD controller, but, in some cases, a storagearray controller may have more resources than an SSD controller. Astorage array controller may use resources, such as memory, CPU, logic,non-volatile memory, etc., as well as unique information (e.g., becausea storage array controller is higher than the SSD controller in thestorage array hierarchy, i.e., further from the storage devices) inorder to manage and control a storage array as well as provideinformation to an SSD controller.

A computer system typically contains one or more CPUs. A CPU may execute(e.g., run, etc.) an operating system (e.g., Microsoft Windows, Linux.MacOS, etc.). An operating system (OS) typically sees a storage array asa collection of disk sectors or just sectors (and sectors may also becalled blocks). Disk sectors may be 512 bytes in length (and typicallyare in the 2011 timeframe). The sectors or blocks of a storage deviceare typically addressed as logical blocks using a logical block address(LBA).

To avoid confusion, the term host block address (HBA) is used herein forthe LBA used to address a storage array controller. Unless explicitlystated otherwise, it is assumed that the host block size (HBS) is equalto the disk block size (DBS). The HBA may be a composite or union of alogical unit number (LUN) that identifies a logical portion of thestorage array or disk or other device in the storage array; an LBA; thevirtual machine (VM), if any; a UserID that identifies the userapplication; a VolumeID that identifies a logical target volume; andother data that may be used for logical access or management purposes.To simplify the description, clarify the figures, and in particular tomake it clear that operations may be performed on different LUNs, theLUN may be shown separately from HBA in figures.

A disk number (D) may identify a disk or other storage device in thestorage array. A disk logical block address (DBA) is the LBA thatidentifies the disk sector on the disk or other storage device. An arrayblock address (ABA) is a composite or union of D and DBA, written <D,DBA>. The storage array may be a RAID array, JBOD, or any otherparticular type of storage array.

A disk controller for an HDD or SSD maintains the relationship betweenan ABA (or the DBA portion of the ABA) and the disk sectors that arephysically part of a storage device (often called the physical disksectors or physical sectors).

To summarize, with just a single disk, the host may provide an LBAdirectly to the disk; the disk controller may convert the LBA to thephysical disk sector (e.g., for an HDD) or to the PBN (e.g., for anSSD). In the presence of a storage array controller the host may stillprovide an LBA, but now to the storage array controller (and thus theLBA may be referred to as an HBA to avoid confusion); the storage arraycontroller may then map this HBA to an ABA and may provide the ABA (orpossibly just the DBA portion of the ABA) to the disk; the disk (e.g.,an HDD or SSD, etc.) may then convert this DBA or ABA (treating the DBAportion of the ABA as though it were just an LBA, which it is) to aphysical disk address: either the physical disk sector (e.g., for anHDD) or PBN (e.g., for an SSD).

In various embodiments, structures and their functions, operations andalgorithms (e.g., methods, functions, etc.) may be described in terms ofsoftware operations, code and pseudo-code. It should be noted that thealgorithms may be performed in hardware; software; firmware; microcode;a combination of hardware, software, firmware or microcode; or in anyother manner that performs the same function and/or has the same effect.In various embodiments, the data structures, or parts of the structures,may be stored in the storage array controller in SRAM, DRAM, embeddedflash, or other memory. Additionally, the data structures, or parts ofthem, may be stored outside the storage array controller. For example,the data structures may be stored on any of the storage devices of astorage array (the local storage or remote storage, i.e., remote fromthe storage array connected to the storage array controller) or on ahost system (the local host or a remote host, i.e., remote from the hostconnected to the storage array controller).

A storage command may be directed to a storage device and may specifyone or more operations, such as read, write, etc. A storage command maybe referred to as a disk command or just command. To help prevent suchconfusion, the term storage command may be used when referencingcommands in general. The term disk command (or disk write, etc.) may beutilized for the command as it arrives at (or is received by) the disk(either SSD or HDD, usually via a standard interface or storage bus,such as SATA, etc.). The term host command (or host write, etc.) may beutilized for the command as it leaves (or is transmitted by) the OS. Adisk command may be the same as a host command when there is a directconnection between the OS on a host system and a single disk.

A storage array controller may perform certain functions instead of (orin addition to) an OS running on a host system; and a storage arraycontroller may also perform certain functions instead of (or in additionto) disk controller(s) in a storage array. A storage array controllermay be logically located between a host system and storage array (ordisk subsystem, storage subsystem, etc.). Each disk may contain its owndisk controller, but a storage array controller may have more resourcesthan a disk controller. The algorithms described here allow a storagearray controller and attached storage accelerator units (SAUs) to useresources, such as memory, non-volatile memory, etc., as well as uniqueinformation (because a storage array controller is higher than a diskcontroller in a storage array hierarchy, i.e., further from the storagedevices) in order to manage and control a storage array as well asprovide information to disk controller(s). For example, a storage arraycontroller may be aware of LUNs but a disk controller may not be awareof LUNs. This hierarchical management approach has advantages andpotential uses that are explained throughout this description in theforms of various algorithms that may be employed by themselves or incombination.

A device driver is typically (though not necessarily) software that maybe manufactured with and sold with a storage array controller. Invarious embodiments, the device driver may be implemented in software,hardware, firmware or a combination, and may be designed, manufacturedand/or sold separately.

In one embodiment, a computer system may comprise multiple virtualmachines (VMs), each VM including an operating system, and a hypervisor.

Each OS may include a file system and one or more storage drivers. Thefile system (sometimes considered part of an OS) may translate orconvert from file-based access (i.e., in terms of directories, filenames and offsets, etc.) to disk-based access (i.e., in terms of LBAsetc.). The storage driver (sometimes considered part of an OS) may beresponsible for handling a disk or other storage device(s). The storagedriver may be separate and distinct from the device driver. The storagedriver may or may not be part of a storage stack, which is the softwarethat controls access to a file system.

In the context of solid-state storage, typically flash memory, when aflash page (or some other portion) of a storage device is no longerrequired (i.e., it is obsolete, no longer valid, or is invalid, etc.)that flash page may be marked as dirty. When an entire flash block(e.g., typically between 16 to 256 flash pages) is dirty, the entireflash block may be erased and free space may be reclaimed. If free spaceon the device is low, a flash block may be chosen that has some dirtyflash pages and some clean (i.e., pages that are not dirty, are good, orvalid, etc.) flash pages. The clean flash pages may be transferred(i.e., written, moved or copied) to a new flash block. All the originalclean flash pages may be marked as dirty and the old flash block may beerased. In the context of solid-state storage, this process oftransferring flash pages to new flash blocks and erasing old flashblocks may be referred to as garbage collection

Example embodiments described in this disclosure include one or morecomputer systems with one or more central processor units (CPUs) andpossibly one or more I/O systems coupled to one or more storage systemsthat contain one or more storage array controllers and one or morestorage devices.

In one embodiment, the storage system may include one or more busstructures. Depending on the constraints (e.g., signaling methods used,the intended operating frequencies, space, power, cost, and otherconstraints, etc.) various alternate bus structures may be used. Apoint-to-point bus may provide the optimal performance in systemsrequiring high-speed interconnections, due to the reduced signaldegradation compared to bus structures having branched signal lines,switch devices, or stubs. However, when used in systems requiringcommunication with multiple devices or subsystems, a point-to-point orother similar bus will often result in significant added cost (e.g.,component cost, board area, increased system power, etc.) and may reducethe potential memory density due to the need for intermediate devices(e.g., buffers, re-drive circuits, etc.).

Functions and performance similar to that of a point-to-point bus can beobtained by using switch devices. Switch devices and other similarsolutions offer advantages (e.g., increased memory packaging density,lower power, etc.) while retaining many of the characteristics of apoint-to-point bus. Multi-drop bus solutions provide an alternatesolution, and though often limited to a lower operating frequency canoffer a cost/performance advantage for many applications. Optical bussolutions permit significantly increased frequency and bandwidthpotential, either in point-to-point or multi-drop applications, but mayincur cost and space impacts.

Although not necessarily shown in all the Figures, the storage systemsmay also include one or more separate control (e.g., commanddistribution, information retrieval, data gathering, reportingmechanism, signaling mechanism, register read/write, configuration,etc.) buses (e.g., a presence detect bus, an I2C bus, an SMBus,combinations of these and other buses or signals, etc.) that may be usedfor one or more purposes including the determination of the storagedevice and/or storage system attributes (generally after power-up), thereporting of fault or other status information to part(s) of the system,calibration, temperature monitoring, the configuration of storagedevice(s) and/or storage subsystem(s) after power-up or during normaloperation or for other purposes. Depending on the control buscharacteristics, the control bus(es) might also provide a means by whichthe valid completion of operations could be reported by storagedevice(s) to the storage controller(s), or the identification offailures occurring during the execution of storage controller requests,etc.

As used herein, the term bus refers to one of the sets of conductors(e.g., signals, wires, traces, and printed circuit board traces orconnections in an integrated circuit) connecting two or more functionalunits in a computing system. The data bus, address bus and controlsignals may also be referred to together as constituting a single bus. Abus may include a plurality of signal lines (or signals), each signalline having two or more connection points that form a main transmissionline that electrically connects two or more transceivers, transmittersand/or receivers.

As used herein, a signal (or line, signal line, etc.) refers to one ormore electrical conductors or optical carriers, generally configured asa single carrier or as two or more carriers, in a twisted, parallel, orconcentric arrangement, used to transport at least one logical signal. Alogical signal may be multiplexed with one or more other logical signalsgenerally using a single physical signal but logical signal(s) may alsobe multiplexed using more than one physical signal.

As used herein, memory devices are generally defined as integratedcircuits that are composed primarily of memory (e.g., storage, etc.)cells, such as DRAMs (Dynamic Random Access Memories), SRAMs (StaticRandom Access Memories), FeRAMs (Ferro-Electric RAMs), MRAMs (MagneticRandom Access Memories), Flash Memory (e.g., NAND flash, NOR flash,etc.) and other forms of random access and related memories that storeinformation in the form of electrical, optical, magnetic, chemical,biological, combination(s) of these, and/or in other forms.

Dynamic memory device types may include FPM DRAMs (Fast Page ModeDynamic Random Access Memories), EDO (Extended Data Out) DRAMs, BEDO(Burst EDO) DRAMs, SDR (Single Data Rate) Synchronous DRAMs, DDR (DoubleData Rate) Synchronous DRAMs, DDR2, DDR3, DDR4, or any of the expectedfollow-on devices and related technologies such as Graphics RAMs, VideoRAMs, LP RAM (Low Power DRAMs) which are often based on the fundamentalfunctions, features and/or interfaces found on related DRAMs.

Flash memory device types may include: NAND, NOR, SLC, MLC, TLC usingany interface (e.g., standard interface (e.g., ONFI, etc.); non-standardinterface; etc.). Flash memory device types may also include any of theexpected follow-on devices and related technologies.

Memory devices may include chips (die) and/or single or multi-chip ormulti-die packages of various types, assemblies, forms, andconfigurations. In multi-chip packages, the memory devices may bepackaged with other device types (e.g., other memory devices, logicchips, CPUs, hubs, buffers, intermediate devices, analog devices,programmable devices, etc.) and may also include passive devices (e.g.,resistors, capacitors, inductors, etc.). These multi-chip packages mayinclude cooling enhancements (e.g., an integrated heat sink, heat slug,fluids, gases, micromachined structures, micropipes, capillaries, etc.)that may be further attached to the carrier or another nearby carrier orother heat removal or cooling system. Other forms of packaging (e.g.,assemblies, modules, cards, units, molding, encapsulation, etc.) formemory devices are also possible.

Although not necessarily shown in all the Figures, storage and memorysupport devices (e.g., storage controller(s), network controller(s),chipset(s), adapter(s), expander(s), buffer(s), buffer circuit(s),buffer chip(s), register(s), intermediate circuit(s), power supplyregulator(s), VRMs, hub(s), re-driver(s), PLL(s), DLL(s), non-volatilememory, SRAM, DRAM, logic circuits, analog circuits, digital circuits,diodes, switches, LEDs, crystals, active components, passive components,combinations of these and other circuits, etc.) may be comprised ofmultiple separate chips (e.g., die, dies, dice, integrated circuits,etc.) and/or components, may be combined as multiple separate chips ontoone or more substrates, may be combined into a single package (e.g.,using die stacking, multi-chip packaging, etc.) or even integrated ontoa single device based on tradeoffs such as: technology, power, space,weight, cost, etc.

One or more of the various passive devices (e.g., resistors, capacitors,inductors, combination(a) of these, etc.) may be integrated into thesupport chip packages, or into the substrate, board, PCB, or raw carditself, based on tradeoffs such as: technology, power, space, cost,weight, etc. These packages may include an integrated heat sink or othercooling enhancements (e.g., such as those described above, etc.) thatmay be further attached to the carrier or another nearby carrier orother heat removal or cooling system.

Memory and storage devices, intermediate devices and circuits, hubs,buffers, registers, clock devices, passives and other memory and storagesupport devices etc. and/or other components may be attached (e.g.,coupled, connected, etc.) to the storage system(s) and/or subsystem(s)and/or other component(s) via various methods including solderinterconnects, conductive adhesives, socket structures, pressurecontacts, electrical/mechanical/optical and/or other methods that enablecommunication between two or more devices (e.g., via electrical,optical, wireless, combinations of these, or alternate means, etc.).

The one or more storage system(s) and/or subsystem(s) and/or othercomponents/devices may be connected (e.g., electrically, optically,wireless, etc.) to the CPU complex, computer system or other systemenvironment via one or more methods such as soldered interconnects,connectors, pressure contacts, conductive adhesives, opticalinterconnects (e.g., laser, LED, optic fiber, etc.), wireless links(e.g., coupling, coils, etc.) and/or other signal communication and/orpower delivery methods. Physical connector systems may include matingconnectors (male/female), conductive contacts and/or pins on one carriermating with a male or female connector, optical connections, pressurecontacts (often in conjunction with a retaining, alignment, and/orclosure mechanism) and/or one or more of various other communication andpower delivery methods. The interconnection(s) may be disposed along oneor more edges of an assembly (e.g., module, card, adapter, etc.) and/orplaced a distance from the storage or other subsystem depending on suchapplication requirements as ease of upgrade, ease of repair, cost,available space and/or volume, heat transfer constraints, component sizeand shape and other related physical, electrical, optical,visual/physical access, requirements and constraints, etc. Electricalinterconnections on a card are often referred to as contacts, pins,connection pins, tabs, etc. Electrical interconnections on a connectorare often referred to as contacts or pins.

The integrity, reliability, availability, serviceability, performanceetc. of a communication path, data storage contents, and all functionaloperations associated with each element of a storage system or storagesubsystem may be improved by using one or more fault detection and/orcorrection methods. Any or all of the various elements of a storagesystem or storage subsystem may include error detection and/orcorrection methods such as CRC (cyclic redundancy code, or cyclicredundancy check), ECC (error-correcting code), EDC (error detectingcode, or error detection and correction), LDPC (low-density paritycheck), parity, checksum or other encoding/decoding methods suited forthis purpose. Further reliability enhancements may include operationre-try (e.g., repeat, re-send, etc.) to overcome intermittent or otherfaults such as those associated with the transfer of information, theuse of one or more alternate, stand-by, or replacement communicationpaths to replace failing paths and/or lines, complement and/orre-complement techniques or alternate methods used in computer, storage,communication, and related systems.

Additional functions that may reside local to the storage subsystemand/or storage system include write and/or read buffers, one or morelevels of cache, protocol translation, error detection and/or correctioncircuitry, data scrubbing, local power management circuitry and/orreporting, operational and/or status registers, initializationcircuitry, performance monitoring and/or control, and other functions.

Terminology

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms (e.g., a, an, the, etc.) are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise.

The terms comprises and/or comprising, when used in this specification,specify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof.

In the following description and claims, the terms include and comprise,along with their derivatives, may be used, and are intended to betreated as synonyms for each other.

In the following description and claims, the terms coupled and connectedmay be used, along with their derivatives. It should be understood thatthese terms are not necessarily intended as synonyms for each other. Forexample, connected may be used to indicate that two or more elements arein direct physical or electrical contact with each other. Further,coupled may be used to indicate that that two or more elements are indirect or indirect physical or electrical contact. For example, coupledmay be used to indicate that that two or more elements are not in directcontact with each other, but the two or more elements still cooperate orinteract with each other.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present invention has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention. Theembodiment was chosen and described in order to best explain theprinciples of the invention and the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a circuit, component, module orsystem. Furthermore, aspects of the present invention may take the formof a computer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

In this description a portable multifunction device (a device) is usedas an example. It should be understood, however, that one or more of theembodiments described herein may be applied to any device (e.g.,consumer device, phone, phone system, cell phone, internet phone, musicplayer, video player, camera, social interaction device, radios, TV,watch, personal communication device, electronic wallet, smart jewelry,personal computer, tablet, laptop computer, computer, server, embeddedsystem, electronic glasses, displays, projector, computer appliance,kitchen appliance, home control appliance, lighting control, networkdevice, router, switch, TiVO, AppleTV, GoogleTV, set-top box, cable box,modem, cable modem, PC, tablet, media box, streaming device,entertainment center, GPS device, automobile system, ATM, toy, gamingsystem, camera, video camera, music device, storage device, back-updevice, exercise machine, e-book reader, PDA, combinations of these,etc.).

The device may support one or more applications e.g., searchapplications contacts and/or friends applications, messagingapplications, telephone applications, video conferencing applications,e-mail applications, communications applications, voice recognitionapplications, instant messaging (IM) applications, blog and/or bloggingapplications, photographic applications (e.g., catalog, management,upload, editing, etc.), shopping, payment, digital camera applications,digital video camera applications, web browsing and browserapplications, digital music player applications, digital video playerapplications, cloud applications, office productivity applications,backup and storage applications, other applications or combinations ormultiple instances (e.g., versions, etc.) of these, etc.

Devices themselves may include (e.g., comprise, be capable of including,have features to include, have attachments, communicate with, etc.) oneor more devices, e.g., as separate components, working in cooperation,as a collection of devices, as a multi-function device, with sockets orports for extra devices and/or components, attached (e.g., directattach, network attached, etc.) devices, upgrade components, expansiondevices and/or modules, etc.

The device may have (e.g., execute, perform, capable of being programmedto perform, etc.) multiple functions (e.g., telephone, videoconferencing, e-mail, instant messaging, blogging, digital photography,digital video, web browsing, digital music playing, social interaction,shopping, searching, combinations of these, etc.). Instructions forperforming the device functions may be included in a computer readablestorage medium or other computer program product configured forexecution by one or more processors.

Language

The terminology and language used herein is for the purpose ofdescribing particular embodiments only and is not intended to belimiting.

As used herein, the singular forms (e.g., a, an, the, one, etc.) areintended to include the plural forms as well, unless the context clearlyindicates otherwise.

As used herein, the terms comprises and/or comprising, when used in thisspecification, specify the presence of stated features, numbers,integers, steps, operations, elements, and/or components, etc, but donot preclude the presence or addition of one or more other features,numbers, integers, steps, operations, elements, components, etc. and/orgroups thereof.

In the following description and claims, the terms include and comprise,along with their derivatives, may be used, and are intended to betreated as synonyms for each other.

In the following description and claims, the terms coupled and connectedmay be used, along with their derivatives. It should be understood thatthese terms are not necessarily intended as synonyms for each other. Forexample, connected may be used to indicate that two or more elements arein direct physical or electrical contact with each other. Further,coupled may be used to indicate that that two or more elements are indirect or indirect physical or electrical contact. For example, coupledmay be used to indicate that that two or more elements are not in directcontact with each other, but the two or more elements still cooperate orinteract with each other.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the following claims areintended to include any structure, material, or act for performing thefunction in combination with other claimed elements as specificallyclaimed.

This description is presented for purposes of illustration andexplanation, but is not intended to be exhaustive or limited to theinvention in the forms disclosed. Modifications, permutations,combinations, and variations of embodiments will be understood andapparent to those of ordinary skill in the art without departing fromthe scope and spirit of this description.

The embodiments chosen and described herein are presented in order tobest explain the principles of the embodiments and their practicalapplications, and to enable others of ordinary skill in the art tounderstand the embodiments with various modifications as are suited tothe particular use contemplated.

As will be understood and appreciated by one skilled in the art, one ormore embodiments described herein may be a system, device, method, orcomputer program product, etc. Accordingly, one or more embodimentsdescribed herein may take the form of an entirely hardware embodiment,an entirely software embodiment (including firmware, resident software,micro-code, etc.) or an embodiment combining software and hardwareaspects that may all generally be referred to herein as a circuit,component, module or system. Furthermore, one or more embodimentsdescribed herein may take the form of a computer program productembodied in one or more computer readable medium(s) having computerreadable program code embodied thereon.

FIG. 1 illustrates a network architecture 100, in accordance with oneembodiment. As shown, a plurality of networks 102 is provided. In thecontext of the present network architecture 100, the networks 102 mayeach take any form including, but not limited to a local area network(LAN), a wireless network, a wide area network (WAN) such as theInternet, peer-to-peer network, etc.

Coupled to the networks 102 are servers 104 which are capable ofcommunicating over the networks 102. Also coupled to the networks 102and the servers 104 is a plurality of clients 106. Such servers 104and/or clients 106 may each include a desktop computer, lap-topcomputer, hand-held computer, mobile phone, personal digital assistant(PDA), tablet computer, peripheral (e.g., printer, etc.), any componentof a computer, and/or any other type of logic. In order to facilitatecommunication among the networks 102, at least one gateway 108 isoptionally coupled therebetween.

FIG. 2 shows a representative hardware environment that may beassociated with the servers 104 and/or clients 106 of FIG. 1, inaccordance with one embodiment. Such figure illustrates a typicalhardware configuration of a mobile device in accordance with oneembodiment having a central processing unit 210, such as amicroprocessor, and a number of other units interconnected via a systembus 212.

The mobile device shown in FIG. 2 includes a Random Access Memory (RAM)214, Read Only Memory (ROM) 216, an I/O adapter 218 for connectingperipheral devices such as disk storage units 220 to the bus 212, a userinterface adapter 222 for connecting a keyboard 224, a mouse 226, aspeaker 228, a microphone 232, and/or other user interface devices suchas a touch screen (not shown) to the bus 212, communication adapter 234for connecting the mobile device to a communication network 235 (e.g., adata processing network) and a display adapter 236 for connecting thebus 212 to a display device 238.

The mobile device may have resident thereon any desired operatingsystem. It will be appreciated that an embodiment may also beimplemented on platforms and operating systems other than thosementioned. One embodiment may be written using JAVA, C, Objective C,and/or C++ language, or other programming languages, along with anobject oriented programming methodology. Object oriented programming(OOP) has become increasingly used to develop complex applications.

Of course, the various embodiments set forth herein may be implementedutilizing hardware, software, or any desired combination thereof. Forthat matter, any type of logic may be utilized which is capable ofimplementing the various functionality set forth herein.

FIG. 3 shows a method 300, in accordance with one embodiment. As anoption, the method may be implemented in the context of the architectureand environment of any subsequent Figure(s). Of course, however, themethod may be implemented in any desired environment.

As shown in operation 302, a signal is received in association with atouch interface of a device. In one embodiment, the signal may include apressure signal which is indicative of a magnitude of pressure. In thecontext of the present description, such pressure signal may include anysignal that is a function of or related to a pressure applied to thedevice. In one embodiment, such pressure signal may be indicative of amagnitude of pressure being applied to a touch interface of the device.In various embodiments, such pressure signal may be generated by apressure sensor including, but not limited to those described in thecontext of subsequently described embodiments, or any other mechanism,for that matter, that is capable of generating the pressure signal.

In other embodiments, the signal may include a touch signal indicativeof a touch interface being touched. In the context of the presentdescription, such touch signal may or may not be indicative of amagnitude of pressure being applied to a touch interface of the device.For example, such touch signal may, in one embodiment, simply indicatewhether applied pressure is sensed, or not, e.g., not necessarily gaugeany more than two pressure states, including pressure-sensed andpressure-not-sensed, etc.

Also in the context of the present description, the aforementioneddevice may include any device including, but not limited to thosedescribed in the context of this and/or subsequently describedembodiments. Further, in various embodiments, the touch interface may ormay not be combined with a display. For example, if the touch interfaceis combined with a display, the touch interface may include a touchscreen. Thus, the touch interface may, in various embodiments, include,but is not limited to a touch screen or any other interface responsiveto touch that is described in the context of this and/or subsequentlydescribed embodiments.

In one optional embodiment, the touch interface may be positioned on afirst face of a device that includes a display on a second face thereof.Further, the first face and second face may include any respective faces(e.g., front, back, left side, right side, top side, bottom side, etc.)that are different. Just by way of example, in various embodiments, thefirst face and the second face may be on opposite faces of the device ofthe device. Further, the first face may include a side face and thesecond face may include a front face of the device. Even still, thefirst face may include a back face and the second face may include afront face of the device. Of course, the touch interface may bepositioned on the same face as the display, in other embodiments.

As indicated in operation 304, a user experience may be altered,utilizing the signal. In the context of the present description, theuser experience may include any aspect of the device that is capable ofbeing directly or indirectly experienced by a user including, but notlimited to those described in the context of this and/or subsequentlydescribed embodiments.

For example, in the context of an embodiment involving the pressuresignal, the user experience may be altered as a function of themagnitude of the pressure being applied to the touch interface,utilizing the pressure signal. Just by way of example, in variousembodiments, the user experience may be altered by causing input to thedevice, by causing output from the device, by causing processing by thedevice, etc. In other embodiments involving a touch signal, the userexperience may be altered in any manner, utilizing the touch signal(dependent or independent of any fluctuation of pressure).

Of course, the foregoing embodiments may be altered by adding and/orremoving various features. For example, in one embodiment, the pressuresignal may be received which is indicative of the magnitude of pressurebeing applied to a touch interface positioned on a first face of adevice that includes a display on a second face thereof. To this end,the user experience may be altered as a function of the magnitude of thepressure being applied to the touch interface, utilizing the pressuresignal.

In another embodiment, a pressure signal may be received which isindicative of a magnitude of pressure being applied to a touch screen.To this end, the user experience may be altered as a function of themagnitude of the pressure being applied to the touch screen, utilizingthe pressure signal. In still yet another optional embodiment, a touchsignal may be received which is indicative of a touch interface beingtouched, where the touch interface is positioned on a first face of adevice that includes a display on a second face thereof. To this end,the user experience may be altered, utilizing the touch signal. Again,any of the features described above (or hereinafter, for that matter)may or may not be combined in any desired manner.

More illustrative information will now be set forth regarding variousoptional architectures and features with which the foregoing techniquesdiscussed in the context of any of the present or previous figure(s) mayor may not be implemented, per the desires of the user. For instance,various optional examples and/or options associated with the operations302 and/or 304, and/or other optional features have been and will be setforth in the context of a variety of possible embodiments. It should bestrongly noted, however, that such information is set forth forillustrative purposes and should not be construed as limiting in anymanner. Any of such features may be optionally incorporated with orwithout the inclusion of other features described.

FIG. 4 shows a method 400 for defining a selection made within a userinterface based in part on contact pressure, in accordance with oneembodiment. As an option, the method 400 may be implemented in thecontext of the architecture and environment of the previous Figures orany subsequent Figure(s). Of course, however, the method 400 may becarried out in any desired environment. It should also be noted that theaforementioned definitions may apply during the present description.

As shown, it is determined whether sufficient initial contact pressureis being exerted on an interaction surface. See determination 402.

In the context of the present description, an interaction surface refersto a surface through which a user may interact with a device. It maytake up the majority of a device face, or just a subset. In variousembodiments, an interaction surface may be sensitive to one or moretypes of interaction, including but not limited to, contact, pressure,and/or proximity. In one embodiment, an interaction surface is receptiveto multitouch input. In another embodiment, an interaction surface maybe non-planar. In yet another embodiment, an interaction surface may betransparent, and combined with a display. In still another embodiment,an interaction surface may be replaceable. Some embodiments of aninteraction surface may have more than one texture, to provide tactileguides to a user when used on the back face of a device. Otherembodiments of an interaction surface are non-rectangular.

In various embodiments, an interaction surface may utilize one or moreforms of technology to sense contact. These contact-sensing technologiesmay include, but are not limited to, capacitive, resistive, optical,surface acoustic wave based, and/or any other contact sensingtechnologies now known or later developed.

In various embodiments, an interaction surface may utilize one or moreforms of technology to sense proximity. These proximity-sensingtechnologies may include, but are not limited to, capacitive, resistive,eddy current, optical, ultrasonic, heat, electric field based, and/orany other contact sensing technologies now known or later developed.

In various embodiments, an interaction surface may utilize one or moreforms of technology to sense pressure. These pressure-sensingtechnologies may include, but are not limited to, conductive, resistive,piezoelectric, and/or any other pressure sensing technologies now knownor later developed. In some embodiments, an interaction surface may beable to only detect the total pressure being exerted on the surface. Inother embodiments, an interaction surface may be able to discern thecontact pressures associated with one or more points or areas ofcontact.

In the context of the present description, contact pressure is thepressure associated with one or more contact points or contact areas,the pressure being exerted on an interaction surface. For example, inone embodiment, contact pressure may be the pressure exerted on aninteraction surface by a single finger press.

In the context of the present description, a contact area refers to thearea of an interaction surface which is in physical contact with animplement of interaction. In various embodiments, the contact area maybe described, stored, and processed, as a collection of cells that arepart of an array. In one embodiment, this array may directly correspondto pixels of a display. In another embodiment, the array may correspondto a grid of discrete areas on an interaction surface which sensecontact, pressure, or both. In still another embodiment, the contactarea is represented as a primitive shape (e.g., circle, square, etc.)which best fits the actual area in contact with an implement ofinteraction.

In the context of the present description, an implement of interactionrefers to an object which is detectable by an interaction surface in oneor more ways (e.g., proximity, contact, pressure, etc.). In variousembodiments, implements of interaction may include, but are not limitedto, fingers, skin, a stylus, and/or any other object with which a usermay interact with a device.

In the context of the present description, a contact point refers to asingle location on an interaction surface which is associated withphysical contact with an implement of interaction. In variousembodiments, the contact point may be determined from a contact area.For example, in one embodiment, a contact point may be located in thecenter of its associated contact area. In another embodiment, a contactpoint may be located on an edge of its associated contact area.

Determining whether sufficient initial contact pressure is being exertedon an interaction surface depends on a threshold contact pressure. Insome embodiments, the smallest degree of contact pressure may besufficient, such that the definition of a selection may be triggered byany contact. In other embodiments, the definition of a selection doesnot occur until a non-negligible threshold contact pressure has beendetected. In one embodiment, this threshold contact pressure may bedefined by the user. In this way, accidental definitions of a selectionmay be avoided.

In some embodiments, determination 402 may be performed only aftercertain events have occurred. For example, in one embodiment, thedetermination may be made only after receipt of an input or combinationof inputs. Possible inputs include, but are not limited to, objectproximity to the interaction surface, activation of a hardware switch orbutton, activation of a software switch or button, and/or any otherinput capable of being detected. In one embodiment, the determinationmay not be made until the host device is woken from a sleep state. Inanother embodiment, the determination itself may also wake the hostdevice from a sleep state.

If the result of determination 402 is that there is sufficient initialcontact pressure being exerted on an interaction surface, the currentcontact pressure level is determined. See operation 404.

In the context of the present description, a contact pressure level isthe pressure reading generated from the raw data received from a touchsensor. In various embodiments, the contact pressure level may berepresented by a number. For example, in some embodiments, the contactpressure level may be represented by an integer. In another embodiment,the contact pressure level may be represented by a floating-pointnumber. In various embodiments, the contact pressure level may berepresented by a percentage of the measurable range of contactpressures. In one embodiment, the contact pressure level may berepresented by a unit less number. In another embodiment, the contactpressure level may be represented by an actual measure of the contactpressure, associated with a unit of pressure.

In various embodiments, the contact pressure level may be represented bya touch state. In the context of the present description, a touch staterefers to a predefined subset of the range of measurable contactpressures. For example, in one embodiment, contact pressure levels maybe represented as one of four predefined touch states: no touch, lighttouch, medium touch, and heavy touch. As an option, the lowest touchstate may require some form of proximity. In some embodiments, the usermay be able to specify how the measurable range of contact pressures ispartitioned across a predefined number of touch states. In oneembodiment, the number and boundaries of touch states may be definedsystem-wide, for all applications. In another embodiment, the number andboundaries of touch states may be defined on a per-application basis.

As shown, the selection area is calculated. See operation 406. In thecontext of the present description, the selection area refers to aregion of the display, or a region of an object pictured on the display,which has been chosen for selection. The calculation of the selectionarea may be based upon one or more factors, including, but not limitedto, a contact pressure level, a touch state, a contact area, a contactpoint, a selection boundary, a selection boundary geometry, and/or anyother information derived from user interaction. In some embodiments,the selection area may be described as the pixels contained within aselection boundary.

In the context of the present description, a selection boundarydescribes the boundary of an associated selection area, and is basedupon a selection boundary geometry. Additionally, in the context of thepresent description, a selection boundary geometry refers to the shapeof a selection boundary. In some embodiments, a selection boundarygeometry may not have reference to actual size or location. For example,in one embodiment, a selection boundary geometry may be described usingfractional coordinates on a unit square.

In various embodiments, a selection area may be described, stored,and/or processed as the area contained within a selection boundary. Aselection boundary may be represented by a selection boundary geometry,a screen location, and one or more transformations, such as scale ororientation. In one embodiment, the screen location is the point onwhich the transformed selection boundary geometry is centered.

In some embodiments, the selection area may be described, stored, and/orprocessed, as a collection of cells that are part of an array. In oneembodiment, this array may directly correspond to pixels of a display.In another embodiment, the array may correspond to a grid based on acoordinate system specific to an object being displayed. In stillanother embodiment, the selection area may be described, stored, andprocessed as a mathematical function that defines the boundary of theselection area.

In one embodiment, the shape of a selection boundary may be one of aplurality of selection boundary geometries predefined within anoperating system. In another embodiment, the shape of a selectionboundary may be predefined within an application, independent ofselection boundary geometries defined within the operating system. Inyet another embodiment, the selection boundary geometry may be specifiedby a user. In still another embodiment, the geometry of the selectionboundary may depend upon at least one form of user input, including butnot limited to contact pressure, number of fingers in contact with thescreen, device orientation, location of user fingers, and/or any otherform of user input. Finally, in another embodiment, the geometry of aselection boundary may depend upon the content within or near a locationassociated with the selection (e.g., contact point, finger location,focal point of user's eyes, cursor location, etc.).

In some embodiments, selection boundaries may have geometries based uponsimple shapes, including, but not limited to, ovals, circles, triangles,squares, rectangles, and/or higher order polygons. In other embodiments,selection boundaries may be based upon regular shapes (e.g., a star, aplus sign, etc.). In one embodiment, a selection boundary may be basedupon the geometry of a contact area.

There are numerous ways in which a selection boundary may be described,stored, and/or processed. In various embodiments, a selection boundarymay be represented by the combination of an established selectionboundary geometry with a location, a scale, and/or a rotation.

In one embodiment, a selection boundary may be described using thevertex coordinates of a selection boundary geometry, in conjunction withlocation, scale, and/or rotation factors. For example, a rectangularselection boundary geometry may be described by the coordinates of thefour corners. As an option, the vertices of a selection boundarygeometry may be described using coordinates within the unit square.

In another embodiment, a selection boundary may be described using amathematical function representing an established selection boundarygeometry, in conjunction with location, scale, and/or rotation factors.For example, an elliptical selection boundary geometry may be describedby an ellipse function whose foci depend upon the scale factor.

In yet another embodiment, a selection boundary may be described using aspline-based representation of a selection boundary geometry, inconjunction with location, scale, and/or rotation factors. For example,a curled selection boundary geometry may be described using splinescombined with location, scale, and rotation factors.

In other embodiments, a selection boundary may be described by a bitmaprepresentation of a selection boundary geometry, in conjunction withlocation, scale, and/or rotation factors. For example, in oneembodiment, a bitmap representation of a contact area may be used as aselection boundary geometry associated with a selection boundary. Inanother embodiment, a bitmap representation of an irregular shape may beused as a selection boundary geometry associated with a selectionboundary. In this way, geometries which may be difficult to describeusing vertices, formulas, or splines may be used as the bases for aselection boundary.

The selection area is calculated by determining the selection boundary.In various embodiments, the selection boundary may be determined bytransforming an appropriate selection boundary geometry as a function ofuser input, including but not limited to, contact pressure level,contact point, contact area, number of fingers detected, deviceorientation, etc. Once the selection boundary has been determined, theselection area is known.

In various embodiments, the selection boundary may be defined bytransforming the scale of an appropriate selection boundary geometry asa function of user input. For example, in one embodiment, a selectionboundary with a circular geometry may have a larger radius at highercontact pressure levels. In another embodiment, a rectangular selectionboundary geometry may be scaled linearly by a factor proportional to thecontact pressure level. In some embodiments, the relationship betweenselection boundary geometry scale and a contact pressure level isproportional. In other embodiments, the relationship between selectionboundary geometry scale and a contact pressure level is inverselyproportional, such that higher pressure may make the geometry smaller.

In various embodiments, the selection boundary may be defined bytransforming the orientation of an appropriate selection boundarygeometry as a function of user input. For example, in one embodiment, aselection boundary with a star-shaped geometry may be rotated furtherclockwise at higher contact pressure levels. In some embodiments, therelationship between selection boundary geometry orientation and acontact pressure level is proportional, such that an increase inpressure may result in a clockwise rotation. In other embodiments, therelationship between selection boundary geometry orientation and acontact pressure level is inversely proportional, such that higherpressure may cause a counterclockwise rotation.

In some embodiments, a selection boundary may have an anchor point. Inthe context of the present description, an anchor point refers to apoint located on or near the selection boundary geometry which remainsfixed as the geometry is transformed. In one embodiment, a selectionboundary may have a scaling anchor point, which remains fixed as thegeometry is scaled. For example, a square selection boundary may have ascaling anchor point in the upper left corner, causing the square toexpand down and to the right, keeping the upper left corner stationary.

In another embodiment, a selection boundary may have a rotational anchorpoint, which is used as an axis of rotation as the selection boundarygeometry is rotated. For example, a star-shaped selection boundary mayhave a rotational anchor point located in the center, such that itrotates along an axis of symmetry.

In various embodiments, the calculation of the selection area may dependupon the context of the selection. Specifically, the selection boundarymay be dependent upon the type of content on or near a point or areaassociated with the selection, including but not limited to, a contactpoint, a contact area, a cursor, a user focus, etc. In variousembodiments, the selection boundary geometry and the manner in which ittransforms as a function of user input may be context dependent. Forexample, in one embodiment, a selection made on or near a text field maycause the selection boundary geometry to be rectangular, with a scalinganchor point located in an upper corner appropriate for the textlanguage (e.g., upper left corner for English, upper right corner forArabic, etc.). In another embodiment, a selection on or near a textfield may cause the rectangular boundary geometry to scale in incrementsof the same scale as the height and width of the text. In this way, itmay be clear to the user which text has been selected, as there maynever exist a selection boundary which contains only half a line orcharacter.

In another embodiment, a selection on or near a text field may result ina rectangular selection boundary geometry which scales proportionally toa contact pressure level in a manner similar to how text is selectedusing a cursor. In this way, a user may select text in a familiarmanner, while only having to vary the pressure being exerted on acontact point, for example. In one embodiment, the text selection beginsto increase once a predefined contact pressure level has been achieved.As an option, the rate at which the selection grows may be a function ofthe contact pressure level, once the predefined contact pressure levelhas been achieved and the selection grown initiated. In anotherembodiment, the text selection scaling may be tiered, such that at onetouch state, the selection grows character by character, at anintermediate touch state the selection grows word by word, and so on,such that the user is able to enlarge the text selection in incrementsof characters, words, lines, paragraphs, and pages, depending on thetouch state. As an option, the selection may also be incremented bysentences.

In other embodiments, the above-mentioned methods for selecting textusing a selection which expands in the direction the text would be readin may also be applied to the selection of other linear subject matter.For example, in one embodiment, this method may be used to select avideo segment. As an option, the selection scaling may be tiered,growing from frame-by-frame to second-by-second to minute-by-minute, andso on. In another embodiment, this method may be used in the selectionof a portion of chronologically arranged material. Possible materialwith a temporal arrangement may include, but is not limited to, acollection of photos, messages in an email account, text messages, webbrowser history, and/or any other collection of items which may bearranged chronologically.

In various embodiments, a selection made within a graphic (e.g.,photograph, drawing, movie still, bitmapped or rasterized text, etc.)may utilize a default selection boundary geometry with a default scalinganchor point. In one embodiment, the user may be able to predefine thedefault selection boundary geometry and/or default scaling anchor point,to be used when making a selection within a graphic. In still anotherembodiment, the default selection boundary geometry and/or defaultscaling anchor point may be predefined within the operating system. Asan option, these defaults may be predefined on a per-application basis.

In various embodiments, a selection made within a photograph may resultin the use of a context-specific selection boundary geometry whichtransforms in a context specific manner. For example, in one embodiment,a selection made within a photograph containing one or more people mayutilize the rough shape of the subjects' faces as a selection boundarygeometry. As an option, the selection boundary geometry may be composedof the perimeter of all faces within a certain distance of a pointrelated to the selection (e.g., contact point, user focus, etc.), thedistance being proportional to a user input (e.g., contact pressurelevel, touch state, etc.). Face selection may be used to assist the userin establishing the identity of photographed individuals, allowingfuture identification to be performed automatically using facialrecognition. In one embodiment, facial and other forms of recognitionmay be performed by a host device, a remote computer, a cloud service,or any other computational resource, or combination of these and otherresources.

In another embodiment, a selection made within a photograph on or nearan eye may utilize a rough shape of the eye as a selection boundarygeometry. As an option, the exactness of the method used toautomatically detect the shape of an eye may vary as a function of auser input, such as contact pressure level. Eye selection may be used toassist the user in removing the “red eye” effect sometimes seen inphotographs.

In one embodiment, a selection made within a graphic may cause theselection boundary geometry to be defined by the collection of pixelsnear a point associated with the selection (e.g., contact point, userfocus, etc.) which are similar in at least one aspect. Possible aspectsinclude, but are not limited to, color, one or more dimensions of anassociated color space, brightness, transparency, and/or any otheraspect that may be associated with a pixel. As an option, the degree ofsimilarity between pixels required to influence the selection boundarygeometry may be a function of a user input, such as a contact pressurelevel. In this way, a user may be assisted in separating an objectwithin the graphic from a background or other visual elements.

In various embodiments, there may exist limits to the amount a selectionboundary geometry may be transformed as a function of user input. Forexample, in one embodiment, the selection boundary geometry may increasein size as the contact pressure level increases, until an upper contactpressure threshold is reached. Contact pressure levels beyond the upperthreshold may not increase the size of the selection boundary geometryany further. In another embodiment, the scale of the selection boundarygeometry may be limited by a lower contact pressure threshold, such thatreducing the contact pressure level below the threshold may not reducethe scale of the selection boundary geometry any further. In yet anotherembodiment, both upper and lower contact pressure thresholds may beimplemented. In other embodiments, this concept of thresholds may beapplied to other variable aspects of the selection boundary, such as theorientation of the selection boundary geometry, and as a function ofother user input, including but not limited to the location of a contactpoint, the size of a contact area, user focus, and/or any other type ofuser input.

In one embodiment, the user may be able to predefine one or more contactpressure thresholds associated with the limits of a transformation ofthe selection boundary geometry. As an option, the user may alsopredefine the limits of the transformation, in addition to the maximumand/or minimum contact pressure level which may affect saidtransformation. In another embodiment, these contact pressure thresholdsand/or transformation limits may be predefined within the operatingsystem. In still another embodiment, the contact pressure thresholds maybe automatically optimized over time, by observing the typical range ofpressures the user exerts in various use scenarios.

In one embodiment, the selection boundary geometry and/or transformationof the selection boundary geometry may depend upon the proximity of anobject to an interaction surface, rather than an aspect of physicalcontact with an interaction surface.

In various embodiments, the selection boundary may depend, at least inpart, upon the user focus. In the context of the present description,user focus refers to a point or area on a display which is the visualand/or interactive focus of the user. For example, in one embodiment,the user focus may be determined by tracking the eyes of a user with oneor more device-mounted cameras, and calculating where the user islooking. This may also be referred to as user gaze, or user gazetracking. As an option, eye movement may also be monitored, to ascertainthe manner in which the user is using the device (e.g., methodicallyreading text, quickly scanning text, examining a picture, visuallysearching for an icon, etc.). In another embodiment, the user focus maybe defined as the location of a cursor in a text environment. In stillanother embodiment, the user focus may be established through userinput, such as a finger tap.

Various aspects of the selection boundary may depend upon the userfocus. For example, in one embodiment, the user focus may be used todetermine the context of a selection. In another embodiment, the userfocus may be used to determine the location of a selection, allowing theuser to make a selection without having to change the location of acontact point. In still another embodiment, the tracking of eye movementmay be used to determine the type of selection (e.g., reading eyemovement may trigger a text selection, etc.).

Once the selection boundary has been determined using an appropriateselection boundary geometry that has been transformed as a function of auser input, the selection area may be calculated.

As shown, the selection area is displayed. See operation 408. In variousembodiments, a selection area may be displayed using one or moreselection functions. In the context of the present description, aselection function refers to a function of one or more inputs whichdetermines one or more properties of a selection. For example, in oneembodiment, possible selection function inputs may include, but are notlimited to, touch state, contact pressure level, selection state, fingerlocations, device orientation, user focus, pressure uncertainty, touchuncertainty, contact point, contact area, gestures, application typeand/or context, application flags, operating system flags, and/or anyother form of user or system input.

Within the context of the present description, pressure uncertaintyrefers to any data associated with the uncertainty inherent in measuringpressure exerted on an interaction surface. Pressure uncertainty mayinclude, but is not limited to, the uncertainty of a measured contactpressure level, a multidimensional array of values representing thevariance of contact pressure measured for each cell/pixel in thevicinity of a contact point, an uncertainty value inherent to aparticular pressure sensor, and/or any other type of data associatedwith uncertainty in pressure measurement.

Within the context of the present description, touch uncertainty refersto any data associated with the uncertainty inherent in sensing contactwith an interaction surface. Touch uncertainty may include, but is notlimited to, the error range associated with the location of a contactpoint, a multidimensional array of values representing the probabilitiesof contact measured for each cell/pixel in the vicinity of a contactpoint, an uncertainty value inherent to a particular touch sensor,and/or any other type of data associated with uncertainty in sensingcontact.

Within the context of the present description, a selection state refersto whether a selection is ‘dynamic’ and still able to vary as a functionof user input, or ‘static’, and not currently varying as a function ofuser input.

In various embodiments, a selection function may determine one or morepresentation properties of a selection. For example, possiblepresentation properties may include, but are not limited to, shading,color, contrast, brightness, line style, animation routine,transparency, pattern, border style, area style, and/or any other visualproperty that may describe an object on a display. Examples of animationroutines include, but are not limited to, “marching ants”, changingcolors, flashing, simulated optical distortions, pulsing highlights,and/or any other routine which varies location, transparency, color,content, and/or any other graphical property over time. In someembodiments, an animation routine may be a function of user input.

In various embodiments, a selection function may vary one or morepresentation properties as a function of contact pressure. In this way,the user has visual feedback as to the level of pressure they areexerting on the device. For example, in one embodiment, the selectionfunction may indicate the contact pressure level by shading theselection with a color which is somewhere between a pair of colors whichrepresent the extrema of measurable contact pressure levels.

In various embodiments, a selection function may determine one or morefundamental properties of a selection. Within the context of thisdescription, fundamental selection properties may include, but are notlimited to, selection boundary geometry, transformation(s) to be appliedto the selection boundary geometry as a function of user input, anchorpoint(s), and/or any other property which may be associated with aselection area.

In various embodiments, the application of a selection function maydisplay a secondary boundary. Within the context of this description, asecondary boundary is any boundary, radius, or area associated with aselection area, which is not the selection boundary. For example, in oneembodiment, a secondary boundary may be the area within which facialdetection is being performed, as opposed to the selection boundary,which may be the outline of detected faces. In another embodiment, asecondary boundary may be the area within which eye detection is beingperformed. In yet another embodiment, the secondary boundary mayrepresent the pressure uncertainty or touch uncertainty associated witha contact area.

In various embodiments, the secondary boundary may be displayed inaddition to, or instead of, the selection boundary. For example, in oneembodiment where face detection is being performed as part ofcalculating the selection area, the selection boundary may be indicatedwith a solid color line while the secondary boundary may be indicatedwith a thin dotted line.

In various embodiments, the area unique to the secondary boundary (i.e.the portion of the enclosed area which does not overlap with theselection area) may have presentation properties that differ from theselection area. For example, in one embodiment, a user may make a textselection of which the intended boundaries are uncertain. The portion ofthe text which was almost certainly intended to be selected may beshaded in green, while the text which may or may not have been selectedintentionally may be shaded in red. The user intention may beextrapolated from uncertainty associated with the contact and/or contactpressure used to make the selection, in accordance with one embodiment.

In various embodiments, the secondary boundary may be used to indicateuncertainty associated with a form of machine recognition including, butnot limited to, facial recognition, OCR, and/or any other form ofmachine recognition. For example, faces within a selection which havebeen recognized with a threshold degree of confidence may be outlined ingreen, while faces whose recognition is suspect (i.e. multiple viablematches, etc.) may be outlined in red (i.e. a secondary border).

As shown, after the selection area has been displayed, it is determinedwhether the selection establishment conditions have been met. Seedetermination 410.

Within the context of the present description, selection establishmentconditions refer to one or more predefined conditions whose satisfactionmay cause the selection state to switch from ‘dynamic’ to ‘static’. Forexample, in one embodiment, once the selection establishment conditionshave been satisfied, the selection may no longer vary with contactpressure levels until determination 402 once again detects sufficientinitial contact pressure. In various embodiments, the selectionestablishment conditions may be defined within a selection function.

In various embodiments, one or more selection establishment conditionsmay depend upon changes in the contact pressure level. For example, insome embodiments, selection establishment may be conditioned uponwhether the contact pressure level drops below a predefined level. Inone embodiment, this threshold contact pressure level may be defined asbeing a set amount of pressure less than the current contact pressurelevel. In this way, a user may reduce the contact pressure a smallamount to modify their selection, with further reduction causing aselection establishment condition to be satisfied. In anotherembodiment, the threshold contact pressure level may be a set pressureamount.

In various embodiments, a selection establishment condition may dependupon contact pressure velocity, or the rate at which the contactpressure level is changing. For example, in one embodiment, a user maybe able to satisfy a selection establishment condition by quicklyreducing the contact pressure level to a predefined level within apredefined amount of time. In another embodiment, selectionestablishment may be conditioned upon whether a user has increased thecontact pressure level to a predefined level within a predefined amountof time. In yet another embodiment, a selection may be established byexceeding a predefined contact pressure velocity, without regard to theactual pressure levels. As a specific example, a user may establishtheir selection by a quick pulse of their finger, without having toreach a particular pressure level.

In various embodiments, a selection establishment condition may dependupon how much time has elapsed since a particular event. For example, inone embodiment, a selection may be established if the user maintains acontact pressure level for a predefined amount of time. As an option,there may be a predefine tolerance level for pressure variations whichmay not reset this timing, allowing for small fluctuations in contactpressure which may be difficult for a user to control. In anotherembodiment, a selection establishment condition may be satisfied once apredefined amount of time has elapsed since the satisfaction ofdetermination 402.

In various embodiments, a selection establishment condition may dependupon forms of user input that are not related to contact pressure. Theseforms of user input may include, but are not limited to, gestures, achange in the number of fingers in contact with the device, change indevice orientation, surpassing a threshold level of accelerations (e.g.,wrist flick, etc.), and/or any other form of user input. It should benoted that selection establishment may also be conditioned upon thesatisfaction of a combination of any of the previously describedconditions.

If it is determined that the selection establishment conditions have notbeen met, the selection is updated in a loop through performingoperations 404, 406, and 408. The selection may continue to vary as afunction of user input until the selection establishment conditions havebeen met.

If it is determined that the selection establishment conditions havebeen met, the selection state is changed from ‘dynamic’ to ‘static’. Seeoperation 412.

Setting the selection state to ‘static’ means the selection is no longerbeing modified by user input. In various embodiments, the selectionfunction may depend in part on the selection state. For example, in oneembodiment, when the selection state is ‘static’, the secondary boundarymay be removed from the display. In another embodiment, a ‘static’selection state may cause the selection area to be displayed in adifferent color, or with a different style of selection boundary. In yetanother embodiment, changing a selection state from ‘dynamic’ to‘static’ may cause one or more application and/or operating system flagsto be set.

In various embodiments, changing a selection state from ‘dynamic’ to‘static’ may prompt the user to choose an action to be performed on orwith the contents of the selection. For example, in one embodiment,after the desired faces have been highlighted and the user has reducedthe contact pressure level below the dynamic selection minimum thresholdpressure, they may be prompted to confirm the identity of the selectedfaces. In another embodiment, after a text selection has been given a‘static’ selection state, the user may be prompted with operations thatmay be performed on the selected text, including but not limited tocopy, cut, paste, spell check, style (e.g., bold, underlined, italic,etc.), font, font size, and/or any other operation which may beperformed on text.

In some embodiments, once a selection has become ‘static’, it can nolonger be modified and may be destroyed upon creation of a newselection. In other embodiments, a user may further modify a staticselection by first applying a contact pressure sufficient to satisfydetermination 402. In one embodiment, satisfying determination 402 witha static selection already in existence may change the selection stateof the previous selection from static to dynamic, allowing furthervariation as a function of user input. In another embodiment, satisfyingdetermination 402 with a static selection already in existence maycreate a new selection, as a function of user input, which is combinedwith the previously made selection. In yet another embodiment, a usermay chose whether to replace a previously made selection or augment(i.e. add to, subtract from, etc.) a previously made selection with anew selection. As an option, the user choice may be indicated throughgesture, voice command, toggling a hardware control, toggling a softwarecontrol, and/or any other form of user input.

In various embodiments, method 400 may be adapted to allow for thedefinition, establishment, and modification of selections through othertypes of user input. Other types of user input may include, but are notlimited to, proximity to an interaction surface, number of contactpoints, gestures, and/or any other form of user input. For example, inone embodiment, a user may expand a text selection by bringing theirfinger into proximity to the interaction surface.

FIG. 5 shows a pressure sensitive user interface 500 for making aselection, in accordance with one embodiment. As an option, the userinterface 500 may be implemented in the context of the architecture andenvironment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the user interface 500 may be implemented in anydesired environment. The aforementioned definitions may apply during thepresent description.

As shown, the user interface 500 may be utilized in making a selectionbased in part on pressure exerted by the user upon one or moreinteraction surfaces located on a device. For example, in oneembodiment, a user's finger 502 may exert a small amount of force overcontact area 504, which is centered on contact point 506 located on apressure sensitive touch screen. If the contact pressure level issufficient, then a selection area 508 having a selection boundary 510 iscalculated and displayed. As the contact pressure is increased, theselection boundary expands to encompass a larger selection area 512.

FIG. 6 shows a method 600 for determining the context of a contactpressure-based selection and choosing an appropriate selection function,in accordance with one embodiment. As an option, the method 600 may beimplemented in the context of the architecture and environment of theprevious Figures or any subsequent Figure(s). Of course, however, themethod 600 may be implemented in any desired environment. Theaforementioned definitions may apply during the present description.

As shown, the context determination zone is defined. See operation 602.Within the context of the present description, a context determinationzone refers to the area that is examined while determining the contextof a selection. In various embodiments, the context determination zonemay be initially defined as a function of one or more elements of userinput upon which the selection itself is based. For example, in oneembodiment, the context determination zone may be initially defined tobe the contact area. In another embodiment, the context determinationzone may be a predefined shape (e.g., circle, square, etc.) ofpredefined size, centered on the contact point. As an option, the usermay be able to specify the initial size and shape of the contextdetermination zone. In yet another embodiment, the context determinationzone may be located such that the contact point is off-center, toprovide a more intuitive user experience (e.g., the zone may be offsetto compensate for the user's view being obstructed by their finger,etc.).

In still another embodiment, the context determination zone may have apredefined size. As an option, the predefined initial size for a contextdetermination zone may be chosen such that it is smaller than any userinterface elements which may be detected. As an additional option, thepredefined initial size may be chosen such that it is large enough toassist a user in distinguishing between potential selection targetswhich are close to each other.

As shown, once the context determination zone has been defined, it isthen determined whether there is a user interface control widget withinthe context determination zone. See determination 604.

Within the context of the present description, a user interface controlwidget refers to any element within a user interface which may receiveuser input, which are typically non-textual. For example, in variousembodiments, user interface control widgets may include, but are notlimited to, buttons, radio boxes, check boxes, drop down lists, sliders,tabs, and/or any other non-textual UI widget.

In some embodiments, user interface control widgets may also includehyperlinks which are isolated from a text field. For example, text thatresponds to user interaction like a button, but is not located within aselectable text field. Selectable text fields and hyperlinks embeddedwithin a text field (e.g., links within a web page, links within a wordprocessing document, etc.) are specifically excluded from thisdefinition of user interface control widgets, as they are treated asseparate cases within this method.

In various embodiments, the determination as to whether there is a userinterface control widget within the context determination zone beginswith determining whether there is a UI control widget located at thecontact point upon which the zone is based. In this way, time is notwasted determining the context of a well-aimed contact point.

If a UI control widget is not located at the contact point, then it maybe determined if there is a UI control widget in the vicinity, withinthe context determination zone. In various embodiments, thisdetermination may be performed using the bounding boxes associated withuser interface elements. Within the context of the present description,a bounding box refers to a rectangle within which a user interfacecontrol widget may reside. In some embodiments, a bounding box may bethe smallest rectangle which may contain a particular user interfacecontrol widget. In this way, detection of user interface control widgetswhose shape is not rectangular is simplified.

For example, in one embodiment, the determination as to whether there isa user interface control widget within the context determination zonemay be performed by determining if the boundary of the contextdetermination zone intersects with the bounding box of any userinterface control widgets. As an option, if the initial size of thecontext determination zone is larger than a predefined minimum (e.g.,smallest bounding box associated with a typical UI control widget,smallest bounding box present within the present UI, etc.), thedetermination may also verify the absence of any bounding boxescompletely contained within the context determination zone, on theinitial pass.

In another embodiment, the determination may be performed by calculatingthe distances between the center of the context determination zone andthe center of every UI control widget present in the interface, andcomparing them with a distance related to the size of the contextdetermination zone.

If it is determined in 604 that there is at least one user interfacecontrol widget within the context determination zone, then a contextsensitive UI control widget selection function is chosen. See operation606. In various embodiments, once an appropriate selection function ischosen, a selection is defined based upon user input. In one embodiment,the selection is defined using method 4.

Within the context of the present description, a context sensitiveselection function refers to a selection function adapted for use inmaking a selection in a context which has been automatically determined.In various embodiments, a context sensitive selection function mayinclude logic to use a different context sensitive selection function todefine the user's selection, based upon user input. In this way, a usermay be able to indicate that the initial context determination is notcorrect, and that another selection function should be used.

For example, in one embodiment, a context sensitive UI control widgetselection function may include logic such that, if the contact pressurelevel exceeds a predefined limit P₀, further definition of the selectionis handled by a different context sensitive selection function, such asone adapted for selecting hyperlinks. In another embodiment, a contactpressure level exceeding P₀ may cause the context determination zone toexpand, and the process of choosing an appropriate selection function toresume, ignoring the UI control widget previously detected within thezone. As an option, future determinations may ignore all UI controlwidgets. In this way, a context-aware user selection initiated with acontact point in the vicinity of a UI control widget may be redirectedto a different type of subject matter without forcing the user toreposition their finger, for example.

In various embodiments, a context sensitive UI control widget selectionfunction may depend upon the context determination zone. For example, inone embodiment, a context sensitive UI control widget selection functionmay use the context determination zone as a secondary boundary. In thisway, the selection function may be able to continue searching thecontext determination zone for additional UI control widgets.

In various embodiments, a context sensitive UI control widget selectionfunction may include logic to handle the case where there is more thatone UI control widget within the context determination zone. In oneembodiment, the selection function may choose the UI control widgetwhose center is closest to the center of the context determination zone.In another embodiment, the selection function may choose the UI controlwidget whose bounding box has greatest overlap with the contextdetermination zone. In still another embodiment, the selection functionmay choose the UI control widget whose bounding box has an edge orcorner closest to the center of the context determination zone.

In various embodiments, a context sensitive UI control widget selectionfunction may include logic to allow the user to toggle between multiplewidgets found within the context determination zone. For example, in oneembodiment, the selection function may include a list of all UI controlwidgets found at least partially within the context determination zone.As an option, the widgets may be arranged in the list in order ofdistance from the center of the context determination zone. In anotherembodiment, the selection function may traverse the list sequentially,selecting a different widget. As an option, the list traversal may occuras a function of user input, including but not limited to, gestures,contact pressure velocity, accelerometer data, and/or any other userinput. In still another embodiment, switching between different widgetsfound within the context determination may occur after a predefinedamount of time has elapsed, and the selection establishment conditionshave not yet been satisfied. In yet another embodiment, a contextsensitive UI control widget selection function may use user focus tochoose between multiple UI control widgets found within the contextdetermination zone.

In various embodiments, a context sensitive UI control widget selectionfunction may visually indicate the selection of a widget to the userbefore the selection has been established. For example, in oneembodiment, the selection function may highlight the outline of thewidget. In another embodiment, the selection function may shade thewidget using a predefined mask of the widget. In still anotherembodiment, the selection function may shade and/or outline the widgetbounding box. In yet another embodiment, the selection function maychange and aspect of text associated with the widget, aspects includingbut not limited to font, text style, text color, and/or any other textproperty. As a specific example, a context sensitive UI control widgetselection function may cause the name of a button to be displayed inblue italics if it is the current context-based selection derived fromuser input. In this way, the user may see what control is about to beactivated before satisfying the selection establishment conditions.

In various embodiments, a context sensitive UI control widget selectionfunction may have selection establishment conditions that depend uponthe type of user interface control widget that is being selected. Someuser interface control widgets are multi-state in nature (e.g., sliders,drop down lists, etc.), while others are bi-state (e.g., buttons, checkboxes, etc.). In some embodiments, it may be assumed that when a usersatisfies the selection establishment conditions for a bi-state UIcontrol widget, they intend for the state of the widget to be toggled.The selection establishment conditions for multi-state UI controlwidgets, on the other hand, may include the election of a widget state.

For example, in one embodiment, the selection establishment conditionsfor a multi-state widget may include one or more primary conditions toestablish that the user intends for that particular multi-state widgetto be selected, and a secondary condition, to establish the state ofthat widget.

In various embodiments, the secondary condition may be satisfied (andthe widget state chosen) through user input which includes, but is notlimited to, contact pressure. As an option, after the primary selectionestablishment conditions have been satisfied, the selection function maydisregard pre-established pressure triggers (e.g., P₀, global pressuretriggers, etc.) until the secondary selection establishment conditionhas been satisfied.

For example, in one embodiment, once the primary conditions forselecting a slider widget have been satisfied, a user may select aslider value by varying the contact pressure level between twopredefined threshold pressures which represent the slider state extrema.In another embodiment, the contact pressure level at the time ofsatisfaction of the primary conditions may be used as a zero point,represented by the middle of the slider values. Increasing the contactpressure may increase the slider value, decreasing the contact pressuremay decrease the slider value. In other embodiments, these methods maybe used to traverse the items within a drop down list, or any othermulti-state UI control widgets which may be assigned a value.

In various embodiments, the secondary selection establishment conditionsmay be finally satisfied using methods previously discussed, includingbut not limited to, a contact pressure velocity trigger.

Once the selection establishment conditions have been satisfied, thestate of the UI control widget may be set. For example, a button may betoggled, a check box may be checked or unchecked, a slider value may beset, etc.

As a specific example of one embodiment, from a user perspective, a usermay make contact with and exert pressure upon an interaction surface,with a contact point near a drop down menu. The user may increase thecontact pressure until the drop down menu is highlighted. Aftermaintaining that contact pressure level for a few seconds, the list ofmenu items becomes visible, after which the user may select an item byvarying the contact pressure. Once the desired menu item is highlighted,the user may execute a rapid increase in pressure to finalize theselection of that menu item.

If it is determined in 604 that there is no user interface controlwidget within the context determination zone, it is then determinedwhether there is an embedded hyperlink within the context determinationzone. See determination 608.

Within the context of the present description, an embedded hyperlinkrefers to a hyperlink which is embedded within a text field. Forexample, in one embodiment, embedded hyperlinks may include, but are notlimited to, text or image links within a web page, text or image linkswithin a word processing document, and/or any other type of link whichmay be contained within a document. It should be noted that any linkwhich may be classified as a hyperlink may fall within this definitionof embedded hyperlink, or within the definition of a UI control widget.

In various embodiments, the determination as to whether there is anembedded hyperlink within the context determination zone begins withdetermining whether there is an embedded hyperlink located at thecontact point upon which the zone is based.

If an embedded hyperlink is not located at the contact point, then itmay be determined if there is an embedded hyperlink in the vicinity,within the context determination zone. In various embodiments, themethods described for locating a UI control widget within the contextdetermination zone may also be applied to determining whether there isan embedded hyperlink in the zone. In one embodiment, the bounding boxesmay be handled by the application displaying the document in which anembedded hyperlink may be found. In another embodiment, the boundingboxes may be handled at a lower level, by the operating system.

If it is determined in 608 that there is at least one embedded hyperlinkwithin the context determination zone, then a context sensitive embeddedhyperlink selection function is chosen. See operation 610. In variousembodiments, once an appropriate selection function is chosen, aselection may be defined based upon user input. In one embodiment, theselection may be defined using method 4.

In various embodiments, a context sensitive embedded hyperlink selectionfunction may include logic to use a different context sensitiveselection function to define the user's selection, based upon userinput. In this way, a user may be able to indicate that the initialcontext determination is not correct, and that another selectionfunction should be used.

For example, in one embodiment, a context sensitive embedded hyperlinkselection function may include logic such that, if the contact pressurelevel exceeds a predefined limit P₂, further definition of the selectionis handled by a different context sensitive selection function, such asone adapted for selecting text. In another embodiment, a contactpressure level exceeding P₂ may cause the context determination zone toexpand, and the process of choosing an appropriate selection function toresume, ignoring the embedded hyperlink previously detected within thezone. As an option, future determinations may ignore all embeddedhyperlinks. In this way, a context-aware user selection initiated with acontact point in the vicinity of an embedded hyperlink may be redirectedto a different type of subject matter without forcing the user toreposition their finger, for example.

In various embodiments, a context sensitive embedded hyperlink selectionfunction may depend upon the context determination zone. For example, inone embodiment, a context sensitive embedded hyperlink selectionfunction may use the context determination zone as a secondary boundary.In this way, the selection function may be able to continue searchingthe context determination zone for additional embedded hyperlinks.

In various embodiments, a context sensitive embedded hyperlink selectionfunction may include logic similar to that used in a context sensitiveUI control widget selection function to handle the case where there ismore that one embedded hyperlink within the context determination zone.Additionally, in various embodiments, a context sensitive embeddedhyperlink selection function may include logic similar to that used in acontext sensitive UI control widget selection function to allow a userto toggle between multiple embedded hyperlinks found within the contextdetermination zone.

In various embodiments, a context sensitive embedded hyperlink selectionfunction may visually indicate the selection of an embedded hyperlinkbefore the selection has been established. For example, in oneembodiment, the selection function may change the color of an embeddedtext hyperlink. In another embodiment, the selection function may changethe font, style, or font size of an embedded text hyperlink. In yetanother embodiment, the selection function may highlight the borders ofa linked image. In this way, the user may see which embedded hyperlinkis about to be activated before satisfying the selection establishmentconditions.

In various embodiments, a context sensitive embedded hyperlink selectionfunction may have selection establishment conditions which change,depending upon previous user input. For example, in one embodiment, ifthe contact pressure level surpasses a value of P₁, but not P₂, theselection establishment condition may change to require the selection ofan option from a hyperlink contextual menu. The contextual menu mayprovide options common to web browsers, including but not limited to“open link”, “copy link”, and/or any other action which may be performedon or with a hyperlink. In various embodiments, the selection of thecontextual menu item may be established using methods including, but notlimited to, those described for multi-state UI control widgets, or othertypes of selections.

In various embodiments, once the selection establishment conditions havebeen satisfied, the selected embedded hyperlink may be activated.

If it is determined in 608 that there are no embedded hyperlinks withinthe context determination zone, it is then determined whether there is aselectable text field within the context determination zone. Seedetermination 612.

Within the context of the present description, a selectable text fieldrefers to a field of text which a user may select and perform operationsupon (e.g., copy, cut, paste, etc.). In one embodiment, a selectabletext field may also include any rasterized text which is recognizedusing an optical character recognition routine.

In various embodiments, the determination as to whether there is aselectable text field within the context determination zone begins withdetermining whether there is a selectable text field located at thecontact point upon which the zone is based.

If a selectable text field is not located at the contact point, then itmay be determined if there is a selectable text field in the vicinity ofthe contact point and within the context determination zone. In variousembodiments, the methods described for locating a UI control widgetwithin the context determination zone may also be applied to determiningwhether there is a selectable text field in the zone, including the useof bounding boxes.

If it is determined in 612 that there is at least one selectable textfield intersecting with or within the context determination zone, then acontext sensitive selectable text selection function is chosen. Seeoperation 614. In various embodiments, once an appropriate selectionfunction is chosen, a selection may be defined based upon user input. Inone embodiment, the selection may be defined using method 4.

In various embodiments, if there is a selectable text field located atthe contact point, the context sensitive selectable text selectionfunction may behave like other text selection functions. For example, inone embodiment, the selection of the text would start at the contactpoint, and expand with pressure in the direction in which the text wouldbe read.

In various embodiments, if there is a selectable text field within thecontext determination zone, but not at the contact point, the selectionfunction may define the selection based upon the entire selectable textfield. For example, in one embodiment, the text within selectable textfield found in the context determination zone may be selected startingat the beginning of the text field, even if it is not near the contactpoint. In another embodiment, the selection of the text begins at thelocation closest to the contact point.

In various embodiments, a context sensitive selectable text selectionfunction may depend upon the context determination zone. For example, inone embodiment, a context sensitive selectable text selection functionmay use the context determination zone as a secondary boundary. In thisway, the selection function may be able to continue searching thecontext determination zone for additional selectable text fields.

In various embodiments, a context sensitive selectable text selectionfunction may include logic to handle the case where there is more thanone selectable text field within the context determination zone. In oneembodiment, the selection function may choose the selectable text fieldwhich is closest to the contact point, the selection not extendingbeyond that text field. In another embodiment, the selection functionmay start the text selection in the selectable text field closest to thecontact point; once all of the text in that closest field has beenselected, the selection may continue to expand into the next closesttext field, starting at the beginning of the field. In still anotherembodiment, the selection function may include logic similar to thatused in a context sensitive UI control widget selection function tohandle the case where there is more that one selectable text fieldwithin the context determination zone. Additionally, in yet anotherembodiment, a context sensitive selectable text selection function mayinclude logic similar to that used in a context sensitive UI controlwidget selection function to allow a user to toggle between multipleselectable text fields found within the context determination zone.

In various embodiments, a context sensitive selectable text selectionfunction may include logic to use a different context sensitiveselection function to define the user's selection, based upon userinput. In this way, a user may be able to indicate that the initialcontext determination is not correct, and that another selectionfunction should be used.

For example, in one embodiment, a context sensitive selectable textselection function may include logic such that, if the contact pressurelevel exceeds a predefined limit P₄, further definition of the selectionis handled by a different context sensitive selection function, such asone adapted for selecting graphics. In another embodiment, a contactpressure level exceeding P₄ may cause the context determination zone toexpand, and the process of choosing an appropriate selection function toresume, ignoring the selectable text field previously detected withinthe zone. As an option, future determinations may ignore all selectabletext fields. In this way, a context-aware user selection initiated witha contact point in the vicinity of a selectable text field may beredirected to a different type of subject matter without forcing theuser to reposition their finger, for example.

In various embodiments, a context sensitive selectable text selectionfunction may visually indicate the selection of a selectable text fieldbefore the selection has been established. For example, in oneembodiment, the selection function may shade the selected text within aselectable text field. In another embodiment, the selection function mayhighlight the borders of an entire selectable text field which has beenselected.

In various embodiments, a context sensitive selectable text selectionfunction may have selection establishment conditions which change,depending upon previous user input. For example, in one embodiment, ifthe contact pressure level surpasses a value of P₃, but not P₄, theselection establishment condition may change to require the selection ofan option from a text selection contextual menu. The contextual menu mayprovide options including, but not limited to, copy, cut, paste, style,send via email, send via SMS, lookup online, and/or any other actionwhich may be performed on selected text. In various embodiments, theselection of the contextual menu item may be established using methodsincluding, but not limited to, those described for multi-state UIcontrol widgets, or other types of selections.

If it is determined in 612 that there is no text within the contextdetermination zone, it is then determined whether there is a selectablegraphic within the context determination zone. See determination 616.

Within the context of the present description, a selectable graphicrefers to an image or display, or a portion of an image or display,which a user is able to select and perform operations upon (e.g., copy,cut, paste, save, etc.). In one embodiment, a selectable graphic mayrefer to any portion of a user interface which is able to be capturedwith a screenshot.

In various embodiments, the determination as to whether there is aselectable graphic within the context determination zone begins withdetermining whether there is a selectable graphic located at the contactpoint upon which the zone is based.

If a selectable graphic is not located at the contact point, then it maybe determined if there is a selectable graphic in the vicinity of thecontact point and within the context determination zone. In variousembodiments, the methods described for locating a UI control widgetwithin the context determination zone may also be applied to determiningwhether there is a selectable text field in the zone, including the useof bounding boxes. As an option, in addition to determining theboundaries of the bounding boxes within the context determination zone,it may also be determined whether they are able to be selected (e.g.,checking a system flag, DRM, copy protection, etc.).

If it is determined in 616 that there is at least one selectable graphicwithin the context determination zone, then a context sensitiveselectable graphic selection function is chosen. See operation 618. Invarious embodiments, once an appropriate selection function is chosen, aselection may be defined based upon user input. In one embodiment, theselection may be defined using method 4.

In various embodiments, if there is a selectable graphic located at thecontact point, the context sensitive selectable graphic selectionfunction may behave like other graphic selection functions. For example,in one embodiment, the selection of the graphic may be defined usingmethod 4.

In various embodiments, if there is a selectable graphic within thecontext determination zone, but not at the contact point, the selectionfunction may define the selection based upon the entire selectablegraphic object. For example, in one embodiment, an image file embeddedin a document near the contact point and at least partially within thecontext determination zone may be selected in its entirety. In anotherembodiment, said image file may be partially selected, starting at alocation within the image that is closest to the contact point, andscaling as a function of user input and in a manner defined by theselection function.

In various embodiments, a context sensitive selectable graphic selectionfunction may depend upon the context determination zone. For example, inone embodiment, a context sensitive selectable graphic selectionfunction may use the context determination zone as a secondary boundary.In this way, the selection function may be able to continue searchingthe context determination zone for additional selectable graphicobjects.

In various embodiments, a context sensitive selectable graphicsselection function may include logic to handle the case where there ismore than one selectable graphic object within the context determinationzone. In one embodiment, the selection function may choose theselectable graphic object which is closest to the contact point.

In another embodiment, the selection function may include logic similarto that used in a context sensitive UI control widget selection functionto handle the case where there is more that one selectable graphicobject within the context determination zone. Additionally, in yetanother embodiment, a context sensitive selectable graphic selectionfunction may include logic similar to that used in a context sensitiveUI control widget selection function to allow a user to toggle betweenmultiple selectable graphic objects found within the contextdetermination zone.

In various embodiments, a context sensitive selectable graphics functionmay pass control to another user interface function, depending upon userinput. In this way, a user may be able to indicate that the initialcontext determination is not correct, and that they wish to activate adifferent user interface routine (e.g., application launcher, favoriteslist, system settings, etc.).

For example, in one embodiment, a context sensitive selectable graphicselection function may include logic such that, if the contact pressurelevel exceeds a predefined limit P₆, further user input is handled by adifferent context sensitive selection function, such as one adapted forselecting graphics. In another embodiment, a contact pressure levelexceeding P₄ may cause the context determination zone to expand, and theprocess of choosing an appropriate selection function to resume,ignoring the selectable graphic previously detected within the zone. Asan option, future determinations may ignore all selectable graphics. Inthis way, a context-aware user selection initiated with a contact pointin the vicinity of a selectable graphic may be redirected to a differenttype of subject matter without forcing the user to reposition theirfinger, for example.

In various embodiments, a context sensitive selectable graphicsselection function may visually indicate the selection of a selectablegraphic object before the selection has been established. For example,in one embodiment, the selection function may shade the selected graphicobject. In another embodiment, the selection function may highlight theborders of a graphic object which has been selected.

In various embodiments, a context sensitive selectable graphicsselection function may have selection establishment conditions whichchange, depending upon previous user input. For example, in oneembodiment, if the contact pressure level surpasses a value of P₅, butnot P₆, the selection establishment condition may change to require theselection of an option from a graphic selection contextual menu. Thecontextual menu may provide options including, but not limited to, copy,cut, paste, set as wallpaper, send via email, send via SMS, and/or anyother action which may be performed on selected graphics. In variousembodiments, the selection of the contextual menu item may beestablished using methods including, but not limited to, those describedfor multi-state UI control widgets, or other types of selections.

If it is determined in 616 that there is no selectable graphics withinthe context determination zone, then the determination zone is expanded.See operation 620.

In one embodiment, the context determination zone may be expanded by afixed number of pixels. In another embodiment, the determination zonemay be expanded by a scaling factor. Once the context determination zonehas been expanded, the context determinations are performed again.

In one embodiment, if the context determination zone reaches apredefined threshold size, the user may be informed that a context couldnot be determined and a selection cannot be made. Other forms of userfeedback indicating a failure to determine context include an alert, aprompt, audio feedback, visual feedback, LED light, and/or any othertype of feedback.

In various embodiments, the user may be able to specify which contextsthey wish to be detected automatically. In some embodiments, additionaltypes of subject matter may be detectable, including types of text data,such as dates, email addresses, phone numbers, and/or any other type oftext information.

In some embodiments, contextual selections may be performed using method600 only in situations where a contact pressure based form of userinteraction has not been defined. In other embodiments, contextualselections may be made system wide using method 600 or similar methods.

FIG. 7 shows a device 700 having a backtouch interface, in accordancewith one embodiment. As an option, the device 700 may be implemented inthe context of the architecture and environment of the previous Figuresor any subsequent Figure(s). Of course, however, the device 700 may beimplemented out in any desired environment. It should also be noted thatthe aforementioned definitions may apply during the present description.

In the context of the present description, a device with a backtouchinterface refers to a device with one or more backtouch sensors orbacktouch switches. In one embodiment, a device with a backtouchinterface may also include one or more other sensors and/or buttons,including but not limited to cameras, hardware buttons, and/or any othertype of device or control. A device with a backtouch interface may alsobe referred to as a backtouch-enabled device.

Within the context of the present description, a backtouch sensor refersto an interaction surface located on a device which has reduced uservisibility while the device is being operated, because it is obscured bythe device itself. For example, in one embodiment, a backtouch sensormay be located on the back of the device, facing away from the user asthey look at a display on the front side. A backtouch sensor may resultin a better user interface experience since the user is able to interactwith the device without obscuring the front display with an implement ofinteraction.

Additional embodiments may be described using the terms ‘front’ and‘back’, but a backtouch-enabled device is not limited to those havingparallel surfaces. Within the context of the present description, theterms ‘front’ or ‘front surface’ and ‘back’ or ‘back surface’ refer toany two surfaces of any portion, piece, section, slice, component, part,and/or face of a device or its parts.

In various embodiments, a backtouch interface may also be a display. Forexample, in one embodiment, a device may have high-resolutiontouchscreens on the front and back. In another embodiment of amulti-display, backtouch-enabled device, the front face may be ahigh-resolution touchscreen and the back face may be a low-resolutiontouchscreen. As an option, one or more of the touch screens in theseembodiments may be black and white. In still another embodiment, thefront and back displays may utilized different display technologiesand/or different display properties. For example, in one embodiment, thefront display may be a high-resolution trans missive touchscreen and theback display may be a low-resolution reflective touchscreen.

As shown, device 700 is an example of one embodiment of abacktouch-enabled device, possessing a backtouch sensor 702 and adisplay 704. In various embodiments, the display 704 may also be aninteraction surface.

As previously defined, an interaction surface is a surface capable ofsensing touch, pressure, proximity, or any combination thereof. Invarious embodiments, a backtouch sensor may be capable of sensing one ormore of touch, pressure, or proximity.

For example, in one embodiment, a backtouch sensor may be a track pad.Within the context of the present description, a track pad is a touchsensitive pointing device which can detect the motion and position of animplement of interaction (e.g., user finger, stylus, etc.).

In various embodiments, a backtouch sensor may include a resistive touchsensor. In one embodiment, a resistive touch sensor is made up of twothin, conducting layers separated by a narrow gap. When an implement ofinteraction presses down on the outer layer, the two layers make contactat that point. A voltage may be applied across the upper layer, from topto bottom. The resistive touch sensor may act as a voltage divider; bymeasuring the output voltage on the lower layer, the vertical positionof the touch position may be sensed. Swapping the voltage to the sidesof the upper layer may allow the horizontal touch position to be sensed.

In various embodiments, a backtouch sensor may include a capacitivetouch sensor. In one embodiment, a capacitive touch sensor is made oftwo layers of parallel conductive lines, separated by an insulator. Thelayers are arranged such that the conductive lines are perpendicular.When an implement of interaction is placed over the conducting lines,there is a change in capacitance. A high frequency signal may be appliedto pairs of conducting lines; the resulting current that passes betweenthe conducting lings is proportional to the capacitance between theconducting lines. This current may be used to sense the touch orproximity of an implement of interaction. A capacitive touch sensor maybe capable of detecting more than one contact point or contact area.

The backtouch-enabled device shown in FIG. 7 is one exemplaryembodiment. The geometry of a backtouch-enabled device need not beconfined to parallel surfaces, with a distinct front and back. Forexample, in one embodiment, the device may have fold-out sections withinteraction surfaces which become backtouch interfaces once the sectionsare folded out. In another embodiment, the backtouch-enabled device maybe composed of curved parts, multiple parts, or complex plan form parts.In still another embodiment, the backtouch-enabled device may not berectilinear in any outline and/or cross section. In yet anotherembodiment, the device may have one or more curved or non-planarsurfaces, including but not limited to surfaces which are concave orconvex. In some embodiments, the device may have one or more surfaceswhich are rigid or hard. In other embodiments, the device may have oneor more surfaces which are soft or flexible. In still other embodiments,the device may change shape, depending on the mode of operation (e.g.,slide-out hardware keyboard, plug-in modules, etc.).

In one embodiment, a backtouch-enabled device may have one or morebacktouch sensors located on plane(s) parallel to the plane of adisplay. For example, see device 700. In another embodiment, abacktouch-enabled device may have one or more backtouch sensors locatedon plane(s) that are at an angle to the plane of a display.

In one embodiment, a backtouch sensor may be located on a plane which iscompletely obscured from the display. In another embodiment, a backtouchsensor may be located on a plane which is partially obscured from thedisplay. For example, a backtouch sensor may be located on the back sideof a transparent or translucent display.

In one embodiment, a backtouch interface is an interaction surface whichmay be made up of one or more touch sensors, one or more pressuresensors, one or more proximity sensors, one or more switches, or anycombination of one or more such sensors or switches. In anotherembodiment, the switches which are part of a backtouch interface may bereal or virtual, displayed or mechanical, soft or hard, or anycombination of these properties.

In various embodiments, gestures and interactions described in terms ofa backtouch interface may also be performed on sidetouch (left and rightsides of a device) and captouch (top and bottom sides of a device)interfaces.

FIG. 8 shows a method 800 for providing feedback to the user of abacktouch interface, in accordance with one embodiment. As an option,the method 800 may be implemented in the context of the architecture andenvironment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the method 800 may be implemented in any desiredenvironment. The aforementioned definitions may apply during the presentdescription.

As shown, it is determined whether the backtouch interface is enabled.See determination 802.

Within the context of the present description, an enabled interface orsurface refers to an interface or surface which is not disabled. Withinthe context of the present description, a disabled interface or surfacerefers to an interface or surface which is not passing user input to anyprocess, system, application, or routine. In one embodiment, a disabledinterface may continue to sense user input, even though it is not used.In another embodiment, a disabled interface may be able to recognize apredefined form or type of user input which then places the interface inan enabled state. As a specific example, in one embodiment, a disabledbacktouch interface may not be used to make a selection until it detectsa predefined pattern of increases and decreases of contact pressure. Inthis way, interfaces may be disabled to avoid unwanted input, and easilyenabled when desired.

It is important to note that in various embodiments, an interface orsurface may be enabled with respect to one type of user input, anddisabled with respect to another type of user input. For example, it maybe possible for an interaction surface to be enabled with respect totouch interactions, and disabled with respect to contact pressure orproximity.

In various embodiments, a backtouch interface may be enabled in responseto user input. For example, in one embodiment, a backtouch interface maybe enabled in response to a predefined gesture performed on aninteraction surface receptive to touch. In another embodiment, abacktouch interface may be enabled in response to a predefined patternof increases and decreases of contact pressure exerted upon aninteraction surface receptive to pressure. In yet another embodiment, abacktouch interface may be enabled by a predefined series of taps orimpacts with the device. As an option, the taps or impacts may bedetected by an accelerometer. In still another embodiment, a backtouchinterface may be enabled by toggling a hardware or software control(e.g., button, switch, etc.).

In various embodiments, a backtouch interface may be enabled withoutspecific user input. For example, in one embodiment, a backtouchinterface may be enabled by a backtouch-enabled application. In anotherembodiment, a backtouch interface may be enabled when the deviceorientation is within a predefined range. In yet another embodiment, abacktouch interface may always be enabled.

If it is determined that the backtouch interface is enabled, then it isdetermined whether there is an implement of interaction in proximity ofthe backtouch interface. See determination 804.

In various embodiments, there may be a threshold proximity that may beachieved before determination 804 is satisfied. In one embodiment, auser may define the threshold proximity. In another embodiment, thethreshold proximity may be predefined within the operating system. Instill another embodiment, the threshold proximity may be predefined on aper-application basis.

If it is determined that an implement of interaction is in proximity tothe backtouch interface, a visual indication of the proximity isdisplayed. See operation 806.

In various embodiments, the location of the implement of interaction inproximity to the backtouch interface may be indicated to the user. Forexample, in some embodiments, a point associated with the location ofthe implement may be displayed. In one embodiment, the point may be thecentroid of the area with the highest proximity value. As an option, thepoint may be represented as a circle, a crosshair, and/or any othershape or icon.

In one embodiment, the point associated with the location of theimplement may be displayed using a predefined color. As an option, theuser may be able to select the color used. In yet another embodiment,the point may be displayed by inverting the preexisting contents of thedisplay located at that point.

In various embodiments, an area associated with the location of theimplement may be displayed. For example, in one embodiment, the area maybe the area with proximity values above a preset threshold value. Inanother embodiment, the area may be a circle centered upon the centroidof maximum proximity values. As an option, the size of the circle may besimilar to a fingertip.

In one embodiment, the area associated with the location of theimplement may be displayed with colored shading. As an option, the usermay preset the color of the shading. In another embodiment, the area maybe indicated by increasing the color brightness (e.g., moving towardswhite within a color space, etc.) of the display content within thearea. In yet another embodiment, the area may be displayed by reducingthe color brightness (e.g., moving towards black within a color space,etc.) of the display content outside the area. As an option, the areamay be displayed with a sharp boundary, or with a softened boundary,creating a glow effect.

In various embodiments, the degree of proximity of the implement ofinteraction to the backtouch interface may be indicated to the user. Forexample, in one embodiment, the color of a point or area being displayedmay be given a degree of transparency dependent upon the proximityvalues, allowing the original display content to be viewed. As anoption, the proximity value may be averaged over the area, and a singletransparency value given to the color applied. In another embodiment,the color of the content displayed within the area may be given a colorbrightness based upon the proximity, such that the area is white rightbefore contact is made. In yet another embodiment, the color of thecontent displayed outside the area may be given a color brightness basedupon an inverse relationship with the proximity, such that all but thearea is black right before contact is made.

As shown, it is determined if an implement of interaction is in contactwith the backtouch interface. See determination 808. If it is determinedthat there is no contact, the proximity may continue to be determinedand displayed.

If it is determined that an implement of interaction is in contact withthe backtouch interface, a visual indication of the contact isdisplayed. See operation 810.

In various embodiments, a visual indication of contact with a backtouchinterface may differ from a visual indication of contact with a frontdisplay, where the contact point and area is usually obscured by animplement of interaction. For example, in one embodiment, the contactpoint may be displayed, instead of or in addition to the contact area.In another embodiment, the visual representation of the interior of thecontact area may be colored. In yet another embodiment, the contact areamay be represented by an iconic version of a fingerprint. In stillanother embodiment, the contact area may be distorted so as to appear tobulge out of the display. As an option, this distortion may increase asa function of contact pressure.

As shown, once the user has been given feedback regarding contact withthe backtouch interface, further user interaction is handled by adifferent routine. See operation 8. For example, methods 4 or 6 may beimplemented at this point, utilizing backtouch contact pressure andcontact point to define a selection.

FIG. 9 shows a pressure-sensitive user interface 900 for making aselection using a backtouch interface, in accordance with oneembodiment. As an option, the user interface 900 may be implemented inthe context of the architecture and environment of the previous Figuresor any subsequent Figure(s). Of course, however, the user interface 900may be implemented in any desired environment. The aforementioneddefinitions may apply during the present description.

As shown, the user interface 900 may be utilized in making a selectionbased in part on pressure exerted by the user upon a backtouchinterface. For example, in one embodiment, a user's finger 902 may exerta small amount of force over contact area 904, which is centered oncontact point 906. In one embodiment, contact area 904 and contact point906 may be displayed on top of the content already being displayed, toassist the user in making contact at the desired location. In anotherembodiment, the contact point 906 may be displayed as a symbol, such asa plus sign, which may be rotated to an orientation estimated to matchthat of the contacting finger. As an option, the finger orientation maybe estimated using the size and shape of the contact area, detectedlocation of other fingers, and/or any other user input or observableproperties.

If the contact pressure level is sufficient, then a selection area 908having a selection boundary 910 and a secondary boundary 912 (indicatinguncertainty related to the contact area) is calculated and displayed. Asan option, the selection may be defined using method 4 or 6, or anyother method of defining a selection based upon contact pressure.

FIG. 10 shows a user interface 1000 for defining settings associatedwith a backtouch interface, in accordance with one embodiment. As anoption, the user interface 1000 may be implemented in the context of thearchitecture and environment of the previous Figures or any subsequentFigure(s). Of course, however, the user interface 1000 may beimplemented in any desired environment. The aforementioned definitionsmay apply during the present description.

In one embodiment, the user interface 1000 may include a plurality ofcheck boxes 1002 which represent various types of user interactionsdetectable by the backtouch interface. The types of interactions mayinclude, but are not limited to, pressure, touch, proximity, and/or anyother type of user interaction. Through these checkboxes, a user maylimit a backtouch interface to only certain types of interactions. As anoption, the user interface 1000 may only present checkboxes forinteraction types detectable by the particular backtouch interfaceassociated with the settings being defined.

In one embodiment, the user interface 1000 may include a plurality ofcheck boxes 1004 which represent various methods of enabling a backtouchinterface. As an option, in one embodiment, more than one method ofactivation may be selected.

In one embodiment, the collection of backtouch interface enablementmethods 1004 may include a checkbox 1006 which allows the interface tobe activated by a gesture. In one embodiment, the gesture may bepredefined within an application or operating system. In anotherembodiment, the user interface 1000 may include a button 1008 to allow auser to specify a gesture to activate the backtouch interface. As anoption, the user may be presented with an interface where they mayspecify the gesture by performing it. In yet another embodiment, theuser may choose from a plurality of predefined gestures.

In one embodiment, the collection of backtouch interface enablementmethods 1004 may include a checkbox 1010 which allows the interface tobe activated by a grip. In the context of the present description, agrip refers to the set of sensor data associated with a particularmanner of holding a device. The sensor data associated with a grip mayinclude, but is not limited to, points and areas of contact on one ormore interaction surfaces, device orientation, contact pressure levelsexerted in one or more contact areas, proximity data (e.g., proximity toportions of a users hand not in contact with the device, etc.), and/orany other sensor data.

In one embodiment, the backtouch interface-enabling grip may bepredefined within an application or operating system. In anotherembodiment, the user interface 1000 may include a button 1012 to allow auser to specify a grip to enable the backtouch interface. As an option,the user may be presented with an interface where they may specify thegrip by performing it. In yet another embodiment, the user may choosefrom a plurality of predefined grips.

In one embodiment, the collection of backtouch interface enablementmethods 1004 may include a checkbox 1014 which keeps the backtouchinterface enabled whenever the device is powered on, similar to aprimary touch screen, for example. In another embodiment, the collectionof backtouch interface enablement methods 1004 may include a checkbox1016 which keeps the backtouch interface disabled.

In one embodiment, the user interface 1000 may include a check box 1018which allows the criteria for backtouch interface enablement to be seton a per-application basis. As an option, check box 1018 may allow anyapplication to override the preferences set with the plurality of checkboxes 1004.

In one embodiment, the user interface 1000 may include a plurality ofcheck boxes 1020 which represent various methods of indicating that abacktouch interface is enabled. As an option, in one embodiment, morethan one indicator may be selected.

In one embodiment, the collection of indicator check boxes 1020 mayinclude a checkbox 1022 which indicates that the backtouch interface isenabled by displaying a colored border around the edge of a display. Inone embodiment, the colored border may be animated.

In one embodiment, the collection of indicator check boxes 1020 mayinclude a checkbox 1024 which indicates that the backtouch interface isenabled using an LED. In one embodiment, the LED may indicate theenabled backtouch interface through a specific color, with other colorsbeing reserved for indicating other device states. In anotherembodiment, the LED may pulse or flash when the backtouch interface isenabled.

In one embodiment, the collection of indicator check boxes 1020 mayinclude a checkbox 1026 which indicates that the backtouch interface isenabled by displaying a colored border around a status bar (e.g., aminimal bar common to most user interfaces, etc.). In one embodiment,the colored border may be animated.

In one embodiment, the collection of indicator check boxes 1020 mayinclude a checkbox 1028 which indicates that the backtouch interface isenabled by displaying an icon. In one embodiment, the icon may belocated within a status bar.

In one embodiment, the collection of indicator check boxes 1020 mayinclude a checkbox 1030 which indicates that the backtouch interface isenabled by changing the color of a status bar. In one embodiment, thecolor change may be animated.

In one embodiment, the collection of indicator check boxes 1020 mayinclude a checkbox 1032 which allows the backtouch interface to beenabled without any indication to the user. As an option, thispreference may be overridden by an application.

In various embodiments, the user interface 1000 may allow a user toconfigure the type and style of feedback provided while an enabledbacktouch interface is being used. For example, in one embodiment, theuser interface 70.0002.3-00 may include a button 1034 which allows auser to specify whether or not feedback is provided while the backtouchinterface is being used. As an option, this preference may be overriddenby applications (e.g., an application may be configured such that itprovides backtouch interface feedback independent of any systempreferences, etc.).

In one embodiment, the user interface 1000 may include a button 1036,which presents a user interface which allows a user to specify the styleof feedback provided when a backtouch interface is being used. Forexample, a user may configure the feedback provided when an implement ofinteraction is in proximity to, contact with, and/or exerting pressureon the backtouch interface.

In one embodiment, the user interface 1000 may include a button 1038,which allows a user to test the style parameters they defined usingbutton 1036. For example, in one embodiment, button 1038 may present auser interface where a user may experiment with a backtouch interface,observing the feedback styles they have configured. As an option, thisinterface may provide a quick way to reconfigure the feedback style.

In various embodiments, the user interface 1000 may allow a user toconfigure the sensitivity of a backtouch interface. In the context ofthe present description, the sensitivity of a backtouch interface refersto the threshold level of interaction (e.g., proximity, contact,pressure, etc.) which a backtouch interface may receive before treatingthe interaction as being intentionally made by a user. In this way,backtouch interactions incidental to device usage may be ignored, whileintentional backtouch user interactions may be acted upon.

In one embodiment, the user interface 70.0002.3-00 may include aplurality of checkboxes 1040 that represent a plurality of backtouchinterface sensitivity levels. The backtouch interface sensitivity levelsmay include, but are not limited to, predefined levels (e.g., “high”,“standard”, “low”, etc.), user defined levels, automatically definedlevels, and/or any other type of sensitivity level.

In one embodiment, the user interface 1000 may allow a user to specifythe sensitivity levels for particular aspects of a backtouch interface(e.g., proximity, contact, pressure, etc.). As an option, the userinterface may provide the user with the ability to save and load userdefined backtouch interface sensitivity profiles.

In the context of the present description, an interface sensitivityprofile refers to a collection of sensitivity parameters associated withvarious aspects of an interaction interface. The sensitivity parametersmay include, but are not limited to, an activation threshold, a maximumsignal beyond which interaction is ignored, sample rate(s), and/or anyother parameter which may be associated with an interaction interface.As an option, the sensitivity parameters may be specific to particulartypes of interaction (e.g., proximity, contact, pressure, etc.).

In the context of the present description, an activation thresholdrefers to a threshold signal below which interaction is ignored. Anactivation threshold may be set for different types of user interaction(e.g., pressure, contact, proximity, etc.). For example, in oneembodiment, an interaction surface may have a pressure activationthreshold of P, below which all pressure interactions are ignored.

It is important to recognize the distinction between activation andenablement. In various embodiments, activation serves as a filter ofincidental interactions, defining the weakest sensor signal which maynot be ignored. Enablement serves a similar purpose, to ignore unwantedinteractions; a disabled interface may not act upon any sensor signalsexcept those related to enabling the interface. In other words,activation filters sensor signals based on strength, while enablementfilters sensor signals based on the signal itself.

In one embodiment, the plurality of checkboxes 1040 may include an“automatic” checkbox, representing a backtouch interface sensitivityprofile automatically determined by the device. As an option, if anautomatic sensitivity profile has not been created, the user may bepresented with the option of initiating the process of automaticallydetermining an optimal backtouch interface sensitivity profile.

In one embodiment, the user interface 1000 may include a button 1042which allows a user to initiate the process of automatically determiningan optimal backtouch interface sensitivity profile. In the context ofthe present description, an optimal interface sensitivity profile refersto a sensitivity profile which would allow an interface to remainenabled all the time, with minimal accidental inputs. In one embodiment,the process of automatically determining an optimal backtouch interfacesensitivity profile may include gathering data over a predefined amountof time. As an option, the time remaining may be displayed in userinterface 1000. During this learning period, the backtouch enablementpreferences specified in checkboxes 1004 may be overridden, and insteadthe user is required to enable the backtouch interface with a specificmethod, chosen such that accidental enablement is highly unlikely (e.g.,two step activation using gestures, hardware switch with on-screenconfirmation, etc.). This facilitates separating intentionalinteractions from incidental interactions. Once enabled, the backtouchinterface may remain enabled for a short period of time. During thelearning period, the device may gather data, including but not limitedto sensor data from the backtouch interface, changes in orientation,backtouch interface enablements, and/or any other data related to use ofthe device. Once the learning period has elapsed, the gathered data maybe used to estimate the levels of meaningless, incidental backtouchinteraction, such as interaction due to holding the device. As anoption, in another embodiment, the user may be able to specify thelength of the learning period. In yet another embodiment, the user maybe able to specify desired accuracy of the sensitivity level, balancingthe reduction of unwanted interactions with a possible increase inintentional interactions being missed.

In one embodiment, the user interface 1000 may include a button 1044which allows a user to test the specified sensitivity settings. Forexample, in one embodiment, button 1044 may present a user interfacewhich provides feedback regarding interactions with the backtouchinterface. As an option, the testing user interface may utilize adefault set of backtouch feedback settings, if the user had previouslyturned feedback off. In another embodiment, button 1044 may activate abacktouch interface, and present feedback to the user within userinterface 1000. As an option, user interface 1000 may ignore any inputreceived from the backtouch interface, only provide feedback related tothe user interactions. In this way, a user may test the settings withthe backtouch interface without accidentally interacting with anycheckboxes, buttons, or other element of user interface 1000.

In various embodiments, the interfaces of FIG. 10, as well as any otherprevious or subsequent interfaces, may take the form of webpagesdisplayed utilizing a web browser on any desired computer, handhelddevice, etc. In such case, any of the parameters or other inputdisclosed herein may be entered without the use of the host device,whereby such parameters or other input (or derivatives thereof) may bepushed to the device for configuration/updating purposes.

FIG. 11 shows a user interface 1100 for defining settings associatedwith a pressure-sensitive interface, in accordance with one embodiment.As an option, the user interface 1100 may be implemented in the contextof the architecture and environment of the previous Figures or anysubsequent Figure(s). Of course, however, the user interface 1100 may beimplemented in any desired environment. The aforementioned definitionsmay apply during the present description.

In one embodiment, the user interface 1100 may include a checkbox 1102to allow the user to enable the pressure-receptive aspect of one or moreinteraction surfaces. In one embodiment, this checkbox may enable allpressure-receptive surfaces. In another embodiment, the user may be ableto specify which pressure-receptive surfaces shall be enabled. Invarious other embodiments, enablement of pressure-receptive surfaces maybe accomplished through user input outside of user interface 1100.Pressure-receptive surface enabling user input may include, but is notlimited to, gestures, software buttons, hardware buttons, accelerometerdata, contact pressure patterns, and/or any other form of user input.

In one embodiment, the user interface 1100 may include a plurality ofcheck boxes 1104 which allow a user to specify which types of feedbackto provide when the pressure-sensitive interface(s) is activated, if anyat all. For example, in one embodiment, the user may specify a soundwhich plays whenever the pressure-sensitive interface is activated. Inanother embodiment, the user may specify a form of visual feedback to begiven when the pressure-sensitive interface is activated. As an option,the user may select from a plurality of predefined forms of feedback.

In one embodiment, the user interface 1100 may include a checkbox 1106which allows a user to specify whether they want visual feedbackregarding contact pressure level. As previously described, contactpressure level may be visually represented in a number of ways,including, but not limited to, a color which is part of a two colorspectrum, a percentage, a unitless number, and/or any otherrepresentation of a value located within a finite range. In oneembodiment, user interface 1100 may allow a user to specify the type ofcontact pressure level feedback. As an option, a separate user interfacemay be presented to the user to define the form of the feedback.

In various embodiments, the user interface 1100 may be used to definethe pressure activation threshold. In the context of the presentdescription, a pressure activation threshold is the smallest contactpressure level which may not be ignored. In one embodiment, the currentpressure activation threshold level 1108 may be displayed within userinterface 1100. The current pressure activation threshold level may bedisplayed as a unitless number, a percentage of the maximum measurablecontact pressure level, a color, a scale, and/or any other method ofrepresenting a value located within a finite range.

In one embodiment, the user interface 1100 may include a button 1110which allows a user to manually specify the pressure activationthreshold level. In one embodiment, the user may be presented with aninterface where they may enter a specific value to be used as thepressure activation threshold. In another embodiment, the user may beprompted to exert the desired threshold pressure on a pressure-sensitiveinterface, confirming their selection by maintaining the desired contactpressure for a predefined amount of time. As an option, the user may beprompted to repeat this process more than one time, after which theresulting pressure levels may be averages. In yet another embodiment,the user may be given the chance to test the newly specified pressureactivation threshold level.

In one embodiment, the user interface 1100 may include a button 1112which resets the pressure activation threshold level to a predefined,default value. As an option, the user may be prompted to confirm thisaction before the default value is applied.

In one embodiment, the user interface 1100 may include a button 1114which initiates a process which determines an optimal pressureactivation threshold level. In the context of the present description,an optimal pressure activation threshold level refers to an activationthreshold which would allow an interface to remain enabled all the time,with minimal erroneous inputs. In one embodiment, the process ofautomatically determining an optimal pressure activation threshold levelmay include gathering data over a predefined amount of time. As anoption, the time remaining may be displayed in user interface 1100.

During this learning period, the pressure activation threshold maytemporarily be set to a level sufficiently high that an accidentalactivation is highly unlikely. This facilitates separating intentionalinteractions from incidental interactions. During the learning period,the device may gather data, including but not limited to sensor datafrom the pressure-sensitive interface, changes in orientation,pressure-sensitive interface activations, and/or any other data relatedto use of the device. Once the learning period has elapsed, the gathereddata may be used to estimate the levels of meaningless, incidentalpressure interaction, such as interaction due to holding the device. Asan option, in another embodiment, the user may be able to specify thelength of the learning period. In yet another embodiment, the user maybe able to specify desired accuracy of the pressure activation thresholdlevel optimization, balancing the reduction of unwanted interactionswith a possible increase in intentional interactions being missed.

In one embodiment, the user interface 1100 may display the amount oftime remaining in an ongoing learning period. See, for example, textfield 1116. In various embodiments, the time remaining in the learningperiod may be displayed in user interfaces other than 1100. Userinterfaces where the remaining time may be displayed include, but arenot limited to, a status bar, a contextual menu, a shortcut menu, apop-up interface adapted for managing various interaction interfaces,and/or any other user interface.

In one embodiment, the user interface 1100 may include a plurality ofcheckboxes 1118 which represent a plurality of forms of feedbackassociated with the automatic determination of an optimal pressureactivation threshold level. During the learning period, it may behelpful to provide the user with feedback every time thepressure-sensitive interface is activated. The forms of feedbackinclude, but are not limited to, a sound, vibration, screen flash,and/or any other form of feedback. In one embodiment, the feedbackassociated with the automatic determination of an optimal pressureactivation threshold level may override preferences set elsewhere. Inanother embodiment, the user may specify the parameters of these formsof feedback.

The user interface 1100 may be used to define and manage touch states.In one embodiment, a preset number of global touch states may bedefined, which the operating system and applications may make use of. Inanother embodiment, the touch states may be defined on a per-applicationbasis.

In one embodiment, the user interface 1100 may include a button 1120which presents the user with a user interface that facilitates thedefinition of touch states. As an option, the user may be able to selectfrom a plurality of predefined touch state definitions. Additionally,the user interface 1100 may display the currently defined touch states.See, for example, text field 1124. The touch states may be representedas a unitless number, a percentage of the range of allowable contactpressure levels, a color, and/or any other representation of a contactpressure level.

In one embodiment, the user interface 1100 may include a button 1122which allows the user to reset the touch state definitions to apredefined default definition. As an option, the user may be promptedfor confirmation before resetting the touch state definition to defaultvalues.

FIG. 12 shows a method 1200 for assisting a user in defining touchstates, in accordance with one embodiment. As an option, the method 1200may be implemented in the context of the architecture and environment ofthe previous Figures or any subsequent Figure(s). Of course, however,the method 1200 may be implemented in any desired environment. Theaforementioned definitions may apply during the present description.

As shown, the highest touch state is defined. See operation 1202. In oneembodiment, the highest touch state may be predefined within theoperating system. In another embodiment, the highest touch state may bespecified by the user, in the form of a contact pressure value.

In various embodiments, the highest touch state may be defined throughuser interaction with a pressure-sensitive interface. For example, inone embodiment, a user may be prompted to exert a level of contactpressure beyond which the highest touch state may be triggered. As anoption, the user may be prompted to exert this pressure multiple times,with the resulting values averaged. In another embodiment, the user maybe prompted to exert the highest contact pressure level which iscomfortable, and then defining the highest touch state using a contactpressure level slightly lower than that being exerted.

Once the highest touch state has been defined, the remaining spectrum ofcontact pressures is partitioned into the remaining touch states anddisplayed. See operation 1204.

In the context of the present description, the spectrum of contactpressures refers to the range of contact pressure levels a user mayexert to interact with the device. For example, in one embodiment, thelower end of a spectrum of contact pressures may be equivalent to thepressure activation threshold level. In various embodiments, there maybe multiple contact pressure spectrums defined. For example, in oneembodiment, there may exist a distinct spectrum of contact pressures foreach pressure-sensitive interaction surface. In another embodiment,there may exist a spectrum of contact pressures which is partitionedinto touch states (a touch state spectrum), and a different spectrum ofcontact pressures for use with contact pressure levels (a contactpressure level spectrum).

In one embodiment, the touch state spectrum may have extrema defined bythe user. As an option, the lower bound of the touch state spectrum maybe the same as pressure activation threshold level.

In one embodiment, the touch state spectrum may be partitioned such thatall touch states contain the same fraction of the touch state spectrum.In another embodiment, the touch state spectrum may be partitioned suchthat all touch states have equal portions of the touch state spectrumexcept for the highest touch state. In yet another embodiment, the touchstate spectrum may be partitioned such that the touch states areweighted, some containing larger fractions of the spectrum than others.As an option, the weight factors may be predefined or may be userdefinable.

In one embodiment, the partitioned touch state spectrum may be displayedas a geometric shape (e.g., circle, rectangle, etc.) which has beensegmented according to the touch state partitions. In anotherembodiment, the partitioned touch state spectrum may be displayed as anarray of percentages of the total spectrum. In yet another embodiment,the touch state spectrum may be displayed as an array of contactpressure levels associated with the boundaries of the partitions.

Once the touch state spectrum has been partitioned and displayed, theuser is given the opportunity to adjust the touch states. See operation1206.

In one embodiment, the user may adjust the contact pressure levelsassociated with the touch states by specifying the numerical values ofspecific contact pressure levels. In another embodiment, the user mayadjust the touch states by interacting with a graphical representationof the partitioned touch state spectrum. In yet another embodiment, theuser may adjust the touch states by defining new partitions using apressure-sensitive interface. As an option, the user may exert thedesired contact pressure level to set the boundaries of a touch state.

Once the touch states have been adjusted, the newly partitioned touchstate spectrum is verified. See operation 1208.

In one embodiment, the touch state spectrum may be verified by askingthe user to confirm their choice through a user interface. In anotherembodiment, the user may verify the touch state spectrum by utilizing itin a testing interface. As an option, the user may be given visualfeedback regarding the exact contact pressure level being exerted, inaddition to the current touch state.

FIG. 13 shows a user interface 1300 for assisting a user in definingtouch states, in accordance with one embodiment. As an option, the userinterface 1300 may be implemented in the context of the architecture andenvironment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the user interface 1300 may be implemented in anydesired environment. The aforementioned definitions may apply during thepresent description.

In one embodiment, the user interface 1300 may include a graphicalrepresentation 1302 of a touch state spectrum, hereinafter referred toas touch space spectrum rendering 1302. As another embodiment, the touchspace spectrum rendering 1302 may be colored with the spectrum of colorsbetween two colors representing spectrum extrema. As an option, the samecolors used to provide pressure dependent feedback to the user of apressure-sensitive interface may be used here.

The touch space spectrum rendering 1302 found in user interface 1300 maybe broken up into ranges of contact pressure representing touch states.In various embodiments, the touch space spectrum rendering may bepartitioned by one or more touch state dividers 1304. In one embodiment,the touch state dividers may simply be a line drawn between two touchstates. In another embodiment, the touch state dividers may also displaythe contact pressure level separating those two touch states.

In various embodiments, a plurality of touch states may be defined. Inone embodiment, the user may specify the number of touch states todefine. In another embodiment, the number of touch states may definedwithin the operating system. In still another embodiment, the number oftouch states may be defined on a per-application basis, by theapplications themselves or by the user (if so allowed by theapplication). In yet another embodiment, there may exist a set ofdefault touch states of a fixed number which may be overridden by adifferent set of touch states defined within an application.

In various embodiments, the touch space spectrum rendering 1302 found inuser interface 1300 may have a labeled scale. For example, in oneembodiment, the lower boundary 1306 of the lowest touch state (e.g., thetouch state associated with the lowest contact pressures) may bedisplayed. As an option, the lower boundary of the touch space spectrummay be equivalent to the pressure activation threshold, which the usermay define using, for example, user interface 1100.

In another embodiment, the upper boundary 1308 of the touch spacespectrum rendering may be displayed. As an option, upper boundary 1308may be automatically set to a value slightly higher than the lowerboundary of the highest touch state, since the highest touch state ismade up of all pressures above that lower boundary. In this way, thescale of the touch space spectrum rendering is not skewed due to thepotentially large range of contact pressures making up the highest touchstate. In yet another embodiment, the touch space spectrum rendering maychange in scale due to user interaction, with upper boundary 1308 beingautomatically updated.

In various embodiments, the touch state dividers 1304 found in the userinterface 1300 may possess touch state divider handles 1310 with which auser may adjust the partitioning of touch states. For example, in oneembodiment, a user may touch and drag a touch state divider handle tochange the value of the associated divider. In another embodiment, auser may select a touch state divider handle; after the touch statedivider handle has been selected, the divider may be assigned a valueequivalent to whatever contact pressure level the user exerts for apredefined amount of time. As a specific example, a user may select atouch state divider handle and then press on an interaction surface.Once the desired contact pressure level is reached, the user maintainsthe pressure for 3 seconds, after which the value of the touch statedivider is updated.

In one embodiment, the user interface 1300 may include a contactpressure gauge 1312 which reports the contact pressure level currentlybeing exerted, to assist the user in selecting a practical partitioningof the touch state spectrum. In another embodiment, the scale of thecontact pressure gauge may match that of touch state spectrum rendering1302. As an option, the scale of both contact pressure gauge 1312 andtouch state spectrum rendering 1302 may be set to accommodate the largerof two values: the current contact pressure level, or a value slightlyhigher than the lower boundary of the highest touch state.

In various embodiments, the touch state dividers 1304 found in the userinterface 1300 may each be associated with a plurality of icon buttons1314 which a user may use to lock a touch state divider at a particularvalue. In one embodiment, adjusting one touch state divider may causeall other unlocked dividers to shift such that the remaining portions ofthe touch state spectrum are partitioned as evenly as possible. As anoption, the user interface 1300 may include a button to unlock all touchstate dividers. In another embodiment, the user interface 1300 mayinclude a button 1316 which distributes all unlocked touch statedividers evenly throughout the remaining parts of the touch statespectrum.

In one embodiment, the user interface 1300 may include a button 1318which allows the user to establish the highest touch state boundarythrough pressure-based user input. In another embodiment, the user maybe prompted to establish this touch state boundary as soon as userinterface 1300 is displayed, in accordance with method 1200. In oneembodiment, the user may only specify the highest touch state, with theremaining touch state spectrum being evenly partitioned across the touchstates.

In one embodiment, the user interface 1300 may include a button 1320which resets all touch state boundaries to default values. In anotherembodiment, the highest touch state boundary may be preserved, only ableto be reset within the interface used to define it that may be displayedin response to activating button 1318.

In various embodiments, the user interface 1300 may include a button1322 which allows a user to test the currently defined touch states. Forexample, in one embodiment, a user may be asked to achieve various touchstates, and maintain them for a certain period of time. In anotherembodiment, the user may be presented with an interface similar to 1300,but where the touch state spectrum rendering 1302 and the contactpressure gauge 1312 are more predominantly displayed. As an option, asound may be played every time a touch state boundary is crossed.

FIG. 14 shows a user interface 1400 for indicating that a backtouchand/or pressure-sensitive interface is activated, in accordance with oneembodiment. As an option, the user interface 1400 may be implemented inthe context of the architecture and environment of the previous Figuresor any subsequent Figure(s). Of course, however, the user interface 1400may be implemented in any desired environment. The aforementioneddefinitions may apply during the present description.

In one embodiment, the user interface 1400 may include one or more icons1402 to indicate that a backtouch and/or pressure-sensitive interfacehas been activated. As an option, the icons may also indicate whether aninterface is enabled. For example, an icon may only be visible if theinterface is enabled, and only in color if the interface is activated.In another embodiment, the icons may have a color which depends upon thecontact pressure level currently being exerted on that particularinterface.

In various embodiments, the user interface 1400 may include a status bar1404 which provides the user feedback regarding various devicefunctions, in addition to other information, such as the date and/ortime. The status bar itself may be used to indicate whether a backtouchand/or pressure-sensitive interface has been activated. For example, inone embodiment, the status bar may have a shading color which dependsupon the contact pressure level currently being exerted on an activatedinterface. This may be done in conjunction with displaying an icon 1402to indicate which interface has been activated. In another embodiment,the change in color may be restricted to just the border 1406 of thestatus bar. In yet another embodiment, the type of interface which hasbeen activated may be indicated through an animation routine, including,but not limited to, a pulsing of the border, a cyclical variation oftransparency of the status bar shading, “marching ants” along the statusbar border, and/or any other animation routine.

In one embodiment, the status bar 1404 within the user interface 1400may include one or more items of textual information 1408. The items oftextual information may include, but are not limited to, date, time,network type, battery level, other device or application statusinformation, and/or any other type of textual information.

In one embodiment, the activation of a backtouch and/orpressure-sensitive interface may be indicated through the presentationproperties of the textual information 1408. Presentation properties fortextual information which may be altered to indicate the activation ofan interface include, but are not limited to, font, style, size, color,animation routine (e.g., flashing text, cycling colors, etc.), and/orany other type of presentation property. In another embodiment,activation of a backtouch and/or pressure-sensitive interface may beindicated by temporarily replacing textual information 1408 with amessage, which may include, but is not limited to, the identity of theactivated interface.

In one embodiment, the user interface 1400 may indicate the activationof a backtouch and/or pressure-sensitive interface by displaying aborder 1410 around the display. As an option, border 1410 may changecolor depending upon the current contact pressure level.

FIG. 15 shows a user interface 1500 for defining a backtouch feedbackstyle, in accordance with one embodiment. As an option, the userinterface 1500 may be implemented in the context of the architecture andenvironment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the user interface 1500 may be implemented in anydesired environment. The aforementioned definitions may apply during thepresent description.

When interacting with a backtouch interface, it may or may not beimportant to provide the user with some form of feedback regarding thelocation and/or activity of their chosen implement of interaction.Providing interaction feedback allows the user to interact with thedevice using an interaction surface they may not be able to see.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1502 which represent various types of feedback which may beprovided as an implement of interaction is in proximity to the backtouchinterface. The types of feedback may include, but are not limited to,visual (e.g., screen flashes, status bar icons, iconic depictions of thelocation of the implement, etc.), sound, vibration, and/or any otherform of feedback. In another embodiment, one or more of these types offeedback may be configured by the user. For example, in one embodiment,the user may select a sound to be played whenever an implement ofinteraction is in proximity to the backtouch interface. In yet anotherembodiment, the feedback may be limited to only those instances wherethe proximity to the backtouch interface appears intentional, ratherthan incidental. As a specific example, in one embodiment, feedbackmight be given for a fingertip, but not for a palm which is in proximityto the backtouch interface due to the user's grip.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1504 which represent various types of visual feedback thatmay indicate that an implement of interaction is in proximity to abacktouch interface. The types of visual feedback include, but are notlimited to, graphical representation of probable implement location,status bar icon, screen flash, and/or any other type of visual feedback.

In various embodiments, a backtouch interface may be able to estimatethe location of an implement of interaction in proximity to thebacktouch interaction surface. This information can be used to provideuseful feedback to the user. For example, in one embodiment, a pointassociated with the location may be displayed. As an option, the pointmay be the centroid of the area with the highest proximity value withina predefine threshold. In another embodiment, the point may be replacedor combined with an icon, shape, or symbol.

In another embodiment, the user may be provided with proximity feedbackin the form of a visual representation of the proximity data receivedfrom the backtouch interface. As an option, the proximity values may bescaled such that the visual representation has the appearance of a glow,centered on the estimated location of the implement.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1506 which represent various styles of visual proximityfeedback. The styles include, but are not limited to, dynamic coloring,the feedback described in conjunction with operation 806 of method 800,and/or any other type or style of visual feedback. In the context of thepresent description, dynamic coloring refers to coloring which varies asa function of proximity to the backtouch interface. For example, in oneembodiment, the color of the visual proximity feedback may vary betweentwo colors which represent the least discernable proximity and thegreatest proximity before contact. As an option, the colors may includea transparency factor, so the visual feedback does not obstruct displaycontents any more than necessary.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1508 which represent various types of feedback which may beprovided as an implement of interaction comes in contact with thebacktouch interface. The types of feedback may include, but are notlimited to, visual (e.g., screen flashes, status bar icons, iconicdepictions of the location of the implement, etc.), sound, vibration,and/or any other form of feedback. In another embodiment, one or more ofthese types of feedback may be configured by the user. For example, inone embodiment, the user may select a sound to be played whenever animplement of interaction makes contact with the backtouch interface. Inyet another embodiment, the feedback may be limited to only thoseinstances where the contact with the backtouch interface is estimated tobe intentional, rather than incidental. As a specific example, in oneembodiment, feedback might be given for contact with a fingertip, butnot for a palm which is in contact with the backtouch interface due tothe user's grip.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1510 which represent various types of visual feedbackindicating contact with the backtouch interface. The types of visualfeedback include, but are not limited to, graphical representations ofcontact location and extent (e.g., contact point, contact area, etc.), astatus bar icon, screen flash, and/or any other type of visual feedback,including those described in other embodiments.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1512 which cause the visual feedback indicating contact withthe backtouch interface to fade after a set amount of time. In anotherembodiment, the user may specify the amount of time before fadingbegins, how quickly the fade occurs, and/or the limits of the fade(e.g., completely disappear, fade to 70% transparency, etc.). As anoption, the fading of the visual feedback may be reversed if theimplement of interaction moves beyond a preset threshold while still incontact with the backtouch interface.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1514 which allow the user to specify the style of visualfeedback associated with making contact with the backtouch interface.The styles may include, but are not limited to, shading of a contactarea, line style of the border of a contact area, animation routine,and/or any other style aspect of visual feedback, including thosedescribed in other embodiments.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1516 which represent various types of feedback which may beprovided as an implement of interaction exerts pressure on the backtouchinterface. The types of feedback may include, but are not limited to,visual (e.g., screen flashes, status bar icons, iconic depictions of thecontact pressure of the implement, etc.), sound, vibration, and/or anyother form of feedback. In another embodiment, one or more of thesetypes of feedback may be configured by the user. For example, in oneembodiment, the user may select a sound to be played whenever animplement of interaction exceeds a predefined contact pressure levelwith the backtouch interface. In another embodiment, the sound may playwhenever there is a change in touch state. In yet another embodiment,the feedback may be limited to only those instances where the contactpressure on the backtouch interface is estimated to be intentional,rather than incidental. As a specific example, in one embodiment,feedback might be given for a finger press, but not for a palm squeezeincidental to the user's grip.

In one embodiment, the user interface 1500 may include buttons 1518which allow the user to specify the colors which represent the extremaof measurable contact pressure levels. As an option, the colors may bespecified with a transparency value.

In one embodiment, the user interface 1500 may include a plurality ofcheckboxes 1520 which represent various venues for presenting visualfeedback based upon the current contact pressure level. The venues forpressure-related visual feedback include, but are not limited to, anarea equivalent to or based upon the contact area, the contact point,the border of the display, the status bar, and/or any other type orexample of visual feedback, including those described in otherembodiments.

In one embodiment, the user interface 7.002.8-00 may include a button1522 which returns all settings defined within user interface 7.002.8-00to predefined default values. As an option, the user may be prompted toconfirm the reset before restoring the default values.

In one embodiment, the user interface 7.002.8-00 may include buttons1524 which allow a user to save and load collections of backtouchfeedback settings. As an option, the user may be prompted to confirmloading a new collection of settings before overwriting the currentcollection.

In one embodiment, the user interface 1500 may include a button 1526which allows a user to test the current backtouch feedback stylesettings. In one embodiment, button 1526 may enable the backtouchinterface (if not already enabled) and allow the user to experience thecurrent backtouch feedback style without being able to interact withuser interface 1500 through the backtouch interface. In other words, theuser may be able to expose the backtouch interface to a range ofproximity, contact, and pressure interactions without accidentallychanging any of the settings found within 1500.

In another embodiment, button 1526 may present to the user a userinterface which allows the user to experience the current backtouchfeedback style settings within a variety of simulated scenarios. Thesimulated scenarios may include, but are not limited to, web browsing,photo viewing, an application launcher, an eBook, word processing,and/or any other common use scenario. As an option, the simulated usescenarios may be defined such that the user is able to experience thecurrent feedback style in a wide range of color schemes, subject matter,degrees of screen clutter, etc.

As a specific example of a backtouch feedback style collection in use,in one embodiment, a user may configure the backtouch interface throughuser interface 1500 such that having a finger in proximity to thebacktouch interface causes a faint blue glow to appear on the display,over the location of the finger. The blue glow becomes brighter as thedistance between the finger and the backtouch interface decreases, untilcontact is made. Upon contact, the display shows a small plus sign atthe contact point and a thin “marching ants” border around the contactarea. The contact area is not shaded. As the user increases contactpressure, the contact area is shaded red, which becomes more opaque asthe pressure increases.

FIG. 16 shows an alternative method 1600 for defining a selection madewithin a user interface based in part on contact pressure, in accordancewith one embodiment. As an option, the method 1600 may be implemented inthe context of the architecture and environment of the previous Figuresor any subsequent Figure(s). Of course, however, the method 1600 may becarried out in any desired environment. It should also be noted that theaforementioned definitions may apply during the present description.

As shown, it is determined if a touch event has occurred. Seedetermination 1602.

In the context of the present description, a touch event refers to anevent in which an implement of interaction comes into contact with aninteraction surface. For example, in one embodiment, pressing on apressure-sensitive backtouch interface with a finger may be a touchevent. Another example may be making contact with a touch-sensitivedisplay with a stylus.

If it is determined that a touch event has occurred, then the touchevent attributes are determined. See operation 1604.

In the context of the present description, touch event attributes referto one or more measurable aspects of the user interaction which resultedin a touch event. The measurable aspects may include, but are notlimited to, touch state, contact area, contact point, contact pressurelevel, pressure uncertainty, touch uncertainty, and/or any othermeasurable aspect of user interaction.

As shown, it is determined whether the system is in a selection mode.See determination 1606.

In the context of the present description, a selection mode refers to asystem state where a user may create or modify a selection in a display.In various embodiments, a selection mode may be represented by a systemflag. Examples of when a system may be in a selection mode include, butare not limited to, instances where a selection already exists,instances where a user has indicated a desire to create a selection.

In various embodiments, a system may be placed in a selection modethrough user input. For example, in one embodiment, the user mayactivate a selection mode by performing a predefined gesture on aninteraction surface. In another embodiment, a user may activate aselection mode by exerting contact pressure on an interaction surfacefor a sufficient amount of time, the contact pressure exceeding apredefined threshold.

If the system is in a selection mode, then a selection is created and/ormodified as a function of the touch event attributes, then displayed.See operation 1608.

In one embodiment, the selection may be created, modified, and/ordisplayed using one or more selection functions. In another embodiment,a display function may be applied in addition to a selection function,to display the selection.

In the context of the present description, a display function refers toa function of one or more inputs which determines one or more propertiesof a display. Properties of a display may include, but are not limitedto, color values for individual pixels, brightness of a displaybacklight or portions of a backlight, and/or any other properties of adisplay. Display functions may apply to an entire display and/ormultiple displays.

In one embodiment, the selection may be displayed with a secondaryboundary representing the uncertainty in the selection. As a specificexample, there may be displayed a small, pale green tinged transparentcircle to show the area that the device is certain the user selected anda surrounding pale-red tinged transparent area (a secondary boundary)representing the area where the device thinks the user may have tried toselect, but is not certain.

Operation 1608 may continue to be performed, updating the selection witheach iteration, until there is a change in the touch state. Seedetermination 1614.

If it is determined in 1606 that the system is not in a selection mode,then it is determined if a gesture has been detected. See determination1610. In one embodiment, a user may be given feedback when a gesture isdetected. Possible feedback may include, but is not limited to, sound,flashing display, appearance of an icon, a colored border on thedisplay, and/or any other form of user feedback.

If a gesture has been detected, then an associated action is performed.See operation 1612. In one embodiment, any gesture may be mapped to anycommand or operation of the device. In another embodiment, a user may beprovided feedback when the action is performed. Possible feedback mayinclude, but is not limited to, sound, flashing display, appearance ofan icon, a colored border on the display, and/or any other form of userfeedback.

A gesture may be associated with a variety of different actions. Theseactions may include, but are not limited to, scrolling a display or userinterface element, zooming in or out, modifying the display brightness,and/or any other action. With respect to making or modifying a selectionthrough method 1600, it is important to note that, in one embodiment, agesture may be associated with placing the system in a selection mode.

FIG. 17 shows a user interface 1700 for performing operations on aselection, in accordance with one embodiment. As an option, the userinterface 1700 may be implemented in the context of the architecture andenvironment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the user interface 1700 may be implemented in anydesired environment. The aforementioned definitions may apply during thepresent description.

After selecting an object, using methods, interfaces, and embodimentsdescribed above or others, a user may wish to perform an operation uponthe object. Providing easily accessible methods to perform operations ona selected object may enhance the user experience. The availability ofmultiple interaction surfaces and/or multiple sensitivities increasesthe number of simple, intuitive ways a user may interact with thedevice.

In various embodiments, once a selection is static, a user may performoperations on the selected object. Possible operations include, but arenot limited to, replication operations (i.e. copy, cut, paste, etc.),relocation operations, text-specific operations, image-specificoperations, cross-application operations, and/or any other type ofoperation.

In various embodiments, a user may perform replication operations on aselected object through simple gestures and other types of user input.For example, in one embodiment, a user may copy a selected object to aclipboard (i.e. temporary storage, etc.) by pressing sharply on apressure-sensitive front interaction surface, on top of the selectedobject. In another embodiment, a user may cut a selected object bypinching the object (i.e. applying contact pressure on the objectthrough a front and back interaction surface), then applying greatercontact pressure on the front interaction surface than the backinteraction surface. In yet another embodiment, a user may perform apaste operation, replacing the selected object with the contents of aclipboard, by pinching the selected object, then applying greatercontact pressure on the back interaction surface than the frontinteraction surface. Of course, in other embodiments, these operationsand those following may be assigned to any other gesture, depending uponthe location, number, and sensing ability of the host device'sinteraction surface(s).

In various embodiments, a user may perform relocation operations on aselected object through simple gestures and other types of user input.For example, in one embodiment, a user may move a selected object bymaking contact with the object on an interaction surface (front or back)and dragging the contact point to relocate the object. As an option, ifthe selection was made within a sequential or ordered environment (i.e.word processing document, etc.), the selected object may becometransparent or translucent while being relocated, so the user may bettersee the insertion point (i.e. cursor, etc.). As shown in this example,the same dragging gesture may have different effects, depending on thestate of the selection (i.e. static vs. active, etc.).

In various embodiments, a user may perform text-specific operations on aselected text object using simple gestures and other types of userinput. See, for example, user interface 1700 in FIG. 17. As shown, aselection 1702 has been made within a block of text 1704. In accordancewith one embodiment, a user has temporarily magnified the selected textby bringing a finger into proximity to a back interaction surface, saidproximity localized in an area 1706 on the selection. As an option, thedegree of magnification may increase as the finger is brought closer tothe interaction surface.

Another example of a text-specific operation is data detection, inaccordance with one embodiment. For example, in one embodiment, a usermay perform a data detection operation on a selected text object bypressing on the selection with two fingers through a back interactionsurface. In various embodiments, the data detection operation mayhighlight detectable information found within the selected textincluding, but not limited to, email addresses, phone numbers, dates andtimes, addresses, web addresses, and/or any other form of information.In another embodiment, the data detection may only highlight types ofinformation which may be further acted upon by the device, such thatafter detection, a user may initiation further action by touching thehighlighted information. For example, in one embodiment, touching ahighlighted phone number may dial the number, touching a highlightedaddress may activate a navigation application, touching a date maycreate an appointment in a calendar application, and so forth.

Other examples of text-specific operations may include, but are notlimited to, highlighting, modifying the style (i.e. bold, italic,underline, strikethrough, color, shadow, etc.), modifying the font,modifying the font size, translating to a different language, and/or anyother operation which may be performed on text. In one embodiment, auser may perform a gesture, such as a two finger, double press on theselected text, to bring up a menu of different text operations (or anyother operation in the present description). In another embodiment, eachoperation may be assigned a different gesture.

In various embodiments, a user may perform image-specific operations ona selected object through simple gestures intuitively related to theoperation being performed. For example, in one embodiment, a user mayapply facial recognition and/or red eye removal by simply tapping (on afront or back interaction surface) on peoples faces within theselection. In another embodiment, a user may resize the selected objectusing the two finger pinch-to-zoom gesture. In still another embodiment,a user may rotate the selected object by making two points of contact onthe object, then twisting the contacting hand. In yet anotherembodiment, a user may warp or distort a selected object by applyingdifferent levels of contact pressure to the selection via a front orback interaction surface. As an option, a front interaction may causepuckering, while a back interaction may cause bulging.

In various embodiments, a user may perform cross-application operationson a selected object through simple gestures. Cross-applicationoperations may include, but are not limited to, placing the selectedobject in a new email or SMS message, placing the selected object in asocial network posting, sending the object to an application capable ofperforming further operations (i.e. image editing application, wordprocessing application, etc.), and/or any other operation which mayinvolve another application. In other embodiments, a user may bepresented with application-specific operations in a menu, in addition tocross-application operations, upon performing a predefined gesture.

FIG. 18 shows a method 1800 for utilizing contact pressure-basedgestures, in accordance with one embodiment. As an option, the method1800 may be implemented in the context of the architecture andenvironment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the method 1800 may be carried out in any desiredenvironment. It should also be noted that the aforementioned definitionsmay apply during the present description.

As shown, it is determined if a touch event has occurred. Seedetermination 1802.

If it is determined that a touch event has occurred, then the initialtouch event attributes are determined. See operation 1804.

As shown, the gesture is identified from gesture input. See operation1806.

In the context of the present description, gesture input refers to thecollection of inputs, flags, and signals by which a gesture isidentified and parameterized. For example, in one embodiment, atwo-finger pinch gesture may be identified by two contact pointscombined with their motion with respect to each other, and parameterizedby the extent of the motion. Possible gesture inputs may include, butare not limited to, touch event attributes (both initial and over time),system and/or application flags, switches, buttons, states, sensor data,and/or any other possible input.

For example, in one embodiment, a gesture may be made up of one or morecontact points on an interaction surface, each associated with adifferent contact pressure level.

In various embodiments, a gesture may be identified from gesture input.Some gestures may be able to be identified solely from initial touchevent attributes. Other gestures may only be identified after thegesture has been performed for some period of time. As a specificexample, a two finger pinch gesture and a two finger swipe areindistinguishable based solely on initial touch event attributes.However, once the swipe or pinch motion has begun, the gestures areimmediately distinguished from each other.

In various embodiments, gestures may include one or more contactpressures being exerted upon an interaction surface. In someembodiments, pressure may be used to distinguish between two gestures.For example, in one embodiment, two gestures involving a two fingerpinch on the front display and one finger contact with the backtouchinterface may be defined based on the contact pressure level exerted onthe back touch interface. In other embodiments, pressure may be used tospecify one or more dimensions of the operation linked to a gesture. Forexample, in one embodiment, a swipe gesture to control scrolling of atext field may use contact pressure to determine the speed of thescrolling (e.g., higher pressure yields faster scrolling, etc.). Instill other embodiments, contact pressure may be used to both identifyas well as parameterize a gesture.

Once the gesture has been identified, the corresponding operation isperformed. See operation 1808.

In various embodiments, a gesture may be associated with themodification of one or more device audio settings. For example, in oneembodiment, a user may adjust the device volume by applying contactpressure to a back interaction surface, and dragging the contact pointup and down to increase or decrease the device volume. As an option, theringer volume may be adjusted by dragging left and right. In anotherembodiment, a user may change where audio is sent (i.e. internalspeakers, headphone jack, Bluetooth device, etc.) by quickly pressingtwice on a back interaction surface, then selecting an audio destinationfrom a pop-up menu presented in response to the rapid double press. Inyet another embodiment, a user may mute the audio by applying pressureon front and back interaction surfaces (i.e. a pinching motion), in apredefined corner of the device. In various embodiments, some or all ofthese device audio related operations may be available through gestureonly after the user provides some form of activation input (i.e.touching an icon in the status bar, performing a simple gesture, etc.).In this way, gesture collisions (i.e. assignment of more than oneoperation to the same gesture, etc.) may be avoided. Of course, theseand the following operations may be associated with any gesture or otheruser input, in various embodiments.

In various embodiments, a gesture may be associated with themodification of one or more display attributes. For example, in oneembodiment, a user may adjust the intensity of a display backlight byapplying contact pressure with three fingers on the display of interest.As an option, the backlight intensity may vary as a function of averagecontact pressure among the three contacts. In another embodiment, a usermay activate a “night mode” (i.e. use of a monochrome red/black colorspace, inverting the display, etc.) by sequentially applying andreleasing contact pressure on each corner of a front interactionsurface. In various embodiments, some or all of these display attributerelated operations may be available through gesture only after the userprovides some form of activation input (i.e. touching an icon in thestatus bar, performing a simple gesture, etc.). In this way, gesturecollisions (i.e. assignment of more than one operation to the samegesture, etc.) may be avoided.

In various embodiments, a gesture may be associated with themodification of one or more device attributes. For example, in variousembodiments, a device may have a status bar along one side of a displaywhich indicates the status of device hardware including, but not limitedto, Wi-Fi signal strength, cellular network type and signal strength,Bluetooth status (i.e. on, off, etc.), system volume, battery remaining,etc. In some embodiments, a user may modify the status of these deviceattributes by interacting with status bar icons. For example, in oneembodiment, a user may apply front surface contact pressure, above apredefined threshold for a predefined amount of time, to a status baricon to turn off the associated device hardware (i.e. Wi-Fi, cellularmodem, Bluetooth, etc.). In another embodiment, a user may apply similarpressure via a back interaction surface to a deactivated status bar iconto turn the associated hardware back on. As an option, applying saidcontact pressure may present the user with a menu of options associatedwith that device hardware (i.e. Wi-Fi networks to join, Bluetoothdevices to pair, activate cellular voice/data/both, etc.).

In yet another embodiment, a user may apply contact pressure to a statusbar battery indicator icon to activate a menu populated with one or morepredefined collections of settings for various power scenarios (i.e.extreme cutbacks for low battery, high performance for charged battery,maximum performance while charging, etc.). In this way, a user mayactivate a power saving mode that allows them to stay connected to aWi-Fi network while saving power by diming the display (i.e. while webbrowsing), and a different power saving mode which turns off Wi-Fiwithout having to dim the display as much (i.e. reading an eBook, etc.).

In various embodiments, some or all of these device attribute relatedoperations may be available through gesture only after the user providessome form of activation input (i.e. touching an icon in the status bar,performing a simple gesture, etc.). In this way, gesture collisions(i.e. assignment of more than one operation to the same gesture, etc.)may be avoided.

In various embodiments, a gesture may be associated withapplication-specific operations. For example, in some embodiments, auser may interact with an email client through multiple interactionsurfaces. In one embodiment, a user may scroll through a list ofmessages and select one for viewing using a back interaction surface. Inanother embodiment, a user may apply a contact pressure on a backinteraction surface, then swipe downward, to forward the currentmessage. In yet another embodiment, a user may apply a contact pressureon a back interaction surface, then swipe upward, to reply to thecurrent message. As an option, a user may perform this gesture using twofingers to reply to all recipients of the message.

In other embodiments, a user may interact with a web browser throughmultiple interaction surfaces. In one embodiment, for example, a usermay apply contact pressure on a link within a webpage, then perform aquick flicking gesture, in any direction, to open the link in abackground tab or window. In another embodiment, a user may open a linkin a new tab or window by pressing on the link through a backinteraction surface for a predetermined amount of time.

In still other embodiments, a user may interact with a cameraapplication through multiple interaction surfaces. For example, in oneembodiment, a user may indicate a point to be used for white balancingby making contact with the displayed point through a back interactionsurface. In another embodiment, a user may adjust one or more cameraproperties by applying different amounts of contact pressure on an iconshown on the front display. Possible camera properties may include, butare not limited to, aperture settings, simulated film speed, f-stop,degree of fill flash, and/or any other camera property or setting.

In even more embodiments, a user may interact with a movie playerthrough a back interaction surface. For example, in one embodiment, amenu may fade into view when a user applies a contact pressure on theback interaction surface. The menu may allow the user to perform one ormore movie-related operations, including but not limited to, togglingsubtitles, selecting an audio track, selecting a chapter or bookmark,and/or any other movie related operation or setting.

In other embodiments, a user may interact with a navigation applicationusing a back interaction surface. For example, in one embodiment, a usermay cycle through a plurality of map layers by applying different levelsof contact pressure on the back interaction surface. Possible map layersmay include, but are not limited to, satellite images, street maps,weather maps, traffic maps, points of interest, navigational route,and/or any other type of map or navigational information.

In various embodiments, some or all of these application-specificoperations may be available through gesture only after the user providessome form of activation input (i.e. touching an icon in the status bar,performing a simple gesture, etc.). In this way, gesture collisions(i.e. assignment of more than one operation to the same gesture, etc.)may be avoided.

In various embodiments, gestures may be associated with operations thatare carried out as functions of the gesture input, when the gesture isperformed and identified.

In various embodiments, the operations associated with a gesture may becarried out as a function of the associated gesture dynamics. In thecontext of the present description, gesture dynamics are aspects of agesture that may vary without changing the identity of the gesture.Possible aspects may include, but are not limited to, contact pointvelocity, contact point acceleration, contact pressure velocity, contactpressure acceleration, time to complete gesture, and/or any other aspectwhich may be associated with a gesture.

In various embodiments, the association between gesture and operationmay be context-dependent. In some embodiments, the association dependson application context (e.g., which application is active, etc.). Forexample, in one embodiment, a gesture which scrolls a text field in oneapplication may turn a page when performed in a different application.

In other embodiments, the association may depend on application or statecontext (e.g., whether or not there is an active selection, whether ornot a control has been activated, etc.). For example, in one embodiment,a gesture which may be used to select text may move text if performedwhen text has already been selected.

In other embodiments, the association may be independent of context,such that performing the gesture may cause the same operation to becarried out, regardless of what application is active. For example, agesture which brings up an interface to adjust screen brightness andvolume may be defined such that it is always available.

In various embodiments, a user may be given feedback as a gesture isperformed. For example, in one embodiment, a representation of thegesture may be temporarily displayed as the gesture is performed. Inthis way, a user may be more aware of the form of the gesture they areperforming. As an option, the geometry of the displayed gesture may besmoothed or otherwise modified.

FIG. 19 shows an exemplary contact pressure-based gesture 1900 forscrolling a text field, in accordance with one embodiment. As an option,the gesture 1900 may be implemented in the context of the architectureand environment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the gesture 1900 may be carried out in any desiredenvironment. It should also be noted that the aforementioned definitionsmay apply during the present description.

In one embodiment of a pressure-based gesture, the display properties ofone or more display(s) may be altered by the gesture, including thescroll speeds of one or more scrollable objects (e.g., text fields,images, cover art, etc.). Scrolling is a common operation, and is oftenassigned to a gesture in touch-based devices.

In one embodiment of a pressure-based gesture, one or more inputs mayalter the scrolling speeds of one or more areas on the display. As aspecific example, a user may wish to scroll quickly through a very largecollection of objects (e.g., contact names, pages of text, photographs,etc.), and desires to control the speed of scrolling in a simplefashion. While performing a classic swipe gesture to scroll through thecollection, the user may also apply increasing contact pressure to apressure-sensitive surface as a means of controlling the scroll speed(e.g., increased contact pressure yields increased scroll speed, etc.).A swipe, slide or other simple gesture may be used.

See, for example, exemplary pressure-based gesture 1900. As shown, thegesture starts at touch event 1902, which involves a single finger ismaking contact at location L1, at time T1, while exerting contactpressure P1, in accordance with one embodiment. The gesture ends attouch event 1904, with touch event attributes L2, T2, and P2. In oneembodiment, the sliding motion from L1 to L2 may be described as a swipegesture.

As shown in plot 1906, as the contact pressure increases from P1 to P2,the scroll speed increases as well, from S1 to S2. In one embodiment,scroll speed may be a display function (in this case, a function ofcontact pressure). As an option, pressure-dependent display functionsmay be step-wise, changing in response to changes in discrete touchstates, or continuous functions of a contact pressure level.

In various embodiments, pressure-based gestures may be classified aseither dynamic gestures or static gestures. In the context of thepresent description, a dynamic gesture is a gesture that requiresmovement across or in proximity to an interaction surface. For example,in one embodiment, a swipe gesture may be classified as a dynamicgesture.

In the context of the present description, a static gesture refers to agesture which does not involve movement across or in proximity to aninteraction surface. Examples of static gestures may include, but arenot limited to, button presses (real or virtual), multi-finger taps,operating a mechanical switch, a squeeze, and/or any other gesture whichdoes not require motion.

In one embodiment of a pressure-based gesture that alters displayproperties, a scroll speed display function may be defined such thatscroll speed increases in a non-linear fashion with respect to thecontact pressure exerted in a swipe gesture.

In various embodiments, pressure-based gestures may be associated withdifferent operations. For example, in one embodiment, pressure-basedgestures may alter one or more display properties. Display propertiesmay include, but are not limited to, backlight intensity, pixel color,scroll bar sensitivity, slideshow rate, and/or any other propertyassociated with a display or its contents. As a specific example, adevice may be in a sleep mode with the display and backlight inactive. Auser may move his finger into proximity of a backtouch sensor in orderto activate the display and the display backlight intensity to a lowintensity level. By increasing the pressure on the backtouch sensor, thebacklight intensity may be increased. Alternatively, the backlightintensity may be initially activated at a high level (e.g., depending onambient light sensor etc.). In this case increasing pressure on thebacktouch display may dim the backlight.

In one embodiment of a pressure-based gesture that alters a scrollspeed, as the gesture magnitude is increased, the rate of scroll speedincrease is increased. In other words, the scroll acceleration isincreased.

In the context of the present description, gesture magnitude refers tothe magnitude of the associated gesture dynamics. For example, in oneembodiment, the gesture magnitude of a swipe gesture may include thelength of the swipe and/or the contact pressure exerted during theswipe.

In one embodiment of a pressure-based gesture to control scrollacceleration, the scroll acceleration may depend on the gestureacceleration. Thus, if the contact is such that the contact point isaccelerating with time (e.g., positive contact point acceleration), thescroll acceleration may be positive. In another embodiment, if thecontact point acceleration is negative then the scroll acceleration maybe negative (e.g., scroll speed decreased, etc.).

In one embodiment of a pressure-based gesture to control scrollacceleration, the scroll acceleration may be both positive and negative,depending on the contact point movement.

In one embodiment of a pressure-based gesture to control scrollacceleration, other display functions may also be altered. Possibledisplay functions include, but are not limited to, selection(s), color,shape, image and/or text magnification, indicator(s) to provide feedbackto user, and/or any other display function.

The addition of pressure dependence to already established touchgestures may facilitate user interactions with the device. Often, theefficacy of a gesture is limited by the size of the device. For example,on a device which uses the pinch-to-zoom gesture, zooming far in or outmay require repetition of the gesture multiple times, due to screensize.

In one embodiment, the pinch-to-zoom touch gesture may be enhanced as apressure-based gesture; after performing the pinch motion, the userexerts pressure on the two contact points. So long as the pressureremains above a predefined threshold, the zoom operation may continueinward/outward without requiring additional pinch motions. As an option,the speed of the zooming may be modified by changing the contactpressure level. As another option, any differences in contact pressurelevel between the two contact points may be dealt with by using theaverage pressure.

In another embodiment, the swipe to scroll touch gesture may be enhancedas a pressure-based gesture; after performing the swipe, the user exertspressure on the contact point without further motion. So long as thepressure remains above a predefined threshold, the scroll operation maycontinue without requiring additional swiping motions. As an option, thescroll speed may vary as a function of the contact pressure level.

FIG. 20 shows an exemplary multitouch pressure gesture 2000 forindicating a direction, in accordance with one embodiment. As an option,the gesture 2000 may be implemented in the context of the architectureand environment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the gesture 2000 may be carried out in any desiredenvironment. It should also be noted that the aforementioned definitionsmay apply during the present description.

As previously discussed, touch gestures may sometimes be modified to bepressure-dependent. In various embodiments, multitouch gestures may alsobe modified to depend upon pressure. As an option, the modifiedmultitouch gestures may depend upon contact pressure differences betweendifferent contact points. In the context of the present description, amultitouch pressure gesture refers to a multitouch gesture whosedefinition relies in part on differences in contact pressure betweendifferent contacts. The definition of multitouch pressure gestures mayrely on a variation in pressure differences over time, but it is notrequired of all multitouch pressure gestures.

See, for example, multitouch pressure gesture 2000 shown in FIG. 20.This static gesture is based upon two points of contact, 2002 and 2004.In various embodiments, this gesture may be used to indicate adirection. As depicted in FIG. 20, this multitouch pressure gesture isindicating a left-to-right direction, in accordance with one embodiment.In other embodiments, this gesture may be associated with any otheroperation, function, or action.

In various embodiments, multitouch pressure gesture 2000 may beperformed by first exerting a contact pressure upon contact point 2002which exceeds a contact pressure being exerted upon contact point 2004.As an option, various embodiments may require that both of these initialcontact pressures exceed a predefined threshold contact pressure level.The gesture is completed by altering the contact pressures on the twocontact points such that the pressure exerted on 2004 now exceeds thatbeing exerted on 2002. As an option, a user may be required to maintainthis pressure inequality for a predefined amount of time. When thisgesture is performed using two digits on the same hand, the user's handmay appear to be rocking from left to right. A right to left directionmay be indicated by changing the order of the pressures. This type ofmultitouch pressure gesture is hereinafter referred to as a rockerpressure gesture.

In various embodiments, a rocker pressure gesture may be preferable oversimply indicating a side of the device through touch or pressure becauseit is less likely to be accidentally performed.

In various embodiments, a rocker pressure gesture may be used to modifya selection. For example, in one embodiment, a text selection may beexpanded in a particular direction by performing a rocker pressuregesture in the desired direction, and maintaining the contact pressuredifference between the two contact points until the text selection isthe desired size. As an option, the speed at which the selection expandsmay be increased/decreased by increasing/decreasing the contact pressuredifferential. In another embodiment, this gesture may be used to modifythe shape of a selection. For example, it may be used to modify theaspect ratio of the selection boundary geometry associated with theselection.

In various embodiments, a rocker pressure gesture may be used inconjunction with a user interface adapted for the visually impaired. Forexample, in one embodiment, the rocker pressure gesture may be used tomove a selection from one UI element (e.g., button, slider, drop downmenu, etc.) to the next. When a UI element is selected, the assistiveinterface may speak the object name and/or magnify it such that thevisually impaired user understands. In this way, a visually impaireduser may operate a user interface displayed on a screen which oftenprovides zero tactile feedback.

In various embodiments, a rocker pressure gesture may be used tofacilitate interaction with the operating system. For example, in oneembodiment, this gesture may be used to traverse a list of applicationsrunning in a multi-tasking environment. In another embodiment, thisgesture may be used to switch between windows in a windowed userenvironment. In yet another embodiment, a rocker pressure gesture may beused to increase/decrease system settings such as volume and displaybrightness.

In various embodiments, a rocker pressure gesture may be advantageous inan application environment. For example, in one embodiment, a rockerpressure gesture may be used to turn the pages of an electronic book, orother multipage document displayed as a book. Using a rocker pressuregesture would allow a user to hold the device with both hands whilereading, thumbs in contact with the screen, without danger ofaccidentally triggering a page turn, nor requiring movement of hands orfingers to turn the page.

FIG. 21 shows an exemplary multitouch pressure gesture 2100 forindicating a rotation, in accordance with one embodiment. As an option,the gesture 2100 may be implemented in the context of the architectureand environment of the previous Figures or any subsequent Figure(s). Ofcourse, however, the gesture 2100 may be carried out in any desiredenvironment. It should also be noted that the aforementioned definitionsmay apply during the present description.

In various embodiments, multitouch gestures may enhance the userexperience with the addition of pressure sensitivity. For example, inone embodiment, the measured difference in contact pressure levels amongdifferent contact points associated with a gesture may determine one ormore parameters associated with the gesture. As an option, the one ormore parameters may vary as a function of the pressure differential.Possible parameters may include, but are not limited to, speed oftransformation, direction of transformation, stringency of a colormatching selection, and/or any other parameter which may be associatedwith any type of action, command, or operation.

In another embodiment, the presence of a pressure differential amongcontact points associated with a gesture may change the identity of thegesture itself. For example, see FIG. 21.

As shown, multitouch pressure gesture 2100 is a static gesture basedupon two points of contact, 2102 and 2104. In various embodiments, thisgesture may be used to indicate a rotation. As depicted in FIG. 21, thismultitouch pressure gesture is indicating a clockwise rotation, inaccordance with one embodiment. In other embodiments, this gesture maybe associated with any operation, function, or action.

In various embodiments, multitouch pressure gesture 2100 may beperformed by exerting contact pressure upon contact points 2102 and 2104such that there is a pressure differential. For example, as seen in FIG.21, the contact pressure associated with contact point 2104 is greaterthan that associated with contact point 2102. As an option, variousembodiments may require that both of these contact pressures exceed apredefined threshold contact pressure level. The gesture is completed byending one or both contacts, or by performing a different gesture. As anoption, a user may be required to maintain this pressure inequality fora predefined amount of time. This type of multitouch pressure gesture ishereinafter referred to as a tipping pressure gesture.

In various embodiments, a tipping pressure gesture may be used to rotatean object or element on a display. For example, in one embodiment, animage or selected portion of an image may be rotated by performing atipping pressure gesture. As an option, the speed of rotation may dependupon the pressure differential between the two contact points. Inanother embodiment, the speed of rotation may vary as a function of thedistance between the two contact points.

In one embodiment, the rotation may be performed in small angularincrements, continuing until the tipping pressure gesture has ended. Inanother embodiment, the rotation is performed in 90° increments (e.g.,changing the orientation of photographs, etc.), independent of gesturelength or pressure differential. In some embodiments, the rotation maybe performed using one of the contact points as the axis of rotation.

In some embodiments, a tipping pressure gesture may only cause arotation in one direction (e.g., clockwise, etc.). In other embodiments,the direction of rotation caused by a tipping pressure gesture maydepend on the positions of the two contact points with respect to eachother. For example, in one embodiment, if the high pressure contactpoint is to the right of the low pressure contact point, the rotationmay be in a clockwise direction, and in a counterclockwise directionotherwise. See, for example, multitouch pressure gesture 2100. In oneembodiment, the axis used to make the left/right determination may bethe horizontal axis as defined by the current device orientation. Inanother embodiment, the horizontal axis used to make the left/rightdetermination is defined by device geometry, and is orientationindependent. In still other embodiments, the axis used to determineleft/right may be independent of device geometry or orientation (e.g.,display diagonal, vertical, etc.).

In various embodiments, a tipping pressure gesture may be used tointeract with user interface elements. For example, in one embodiment, atipping pressure gesture may be used to increase/decrease the value of aselected slider or scale. In another embodiment, a tipping pressuregesture may be used to cycle through options on a circular pop-up menu.In still another embodiment, a tipping pressure gesture may be used toquickly scroll through a list of items. Possible items may include, butare not limited to, email messages, songs or videos, files, photos,and/or any other object or data.

In some embodiments, there may exist two or more gestures which are thesame or similar in execution. For example, see multitouch pressuregestures 2000 and 2100. While performing a tipping pressure gesture, ifa user allows the contact pressure differential to switch sign (i.e. lowpressure contact point becomes the high pressure contact point, and visaversa), a rocker pressure gesture may be recognized by the device. Invarious embodiments, constraints may be placed upon gestures to assistthe operating system in differentiating between similar gestures.

In various embodiments, similar or identical gestures may bedistinguished from each other through the context of their use. Forexample, in one embodiment, the recognition of a tipping pressuregesture may be limited to instances where there is a rotatable objectselected; the rocker pressure gesture would be available in all otherinstances. By ensuring similar gestures are not recognizable in the samecontext, user confusion and erroneous gestures may be reduced. Thesecontexts may include, but are not limited to, selection status, devicestate, active application, system flags, selection subject matter,and/or any other property or attribute by which contexts may be defined.

In various embodiments, similar or identical gestures may bedistinguished from each other by the positions of points of interaction,relative to a common axis system. In the context of the presentdescription, a point of interaction refers to any point on aninteraction surface where user interaction may be localized. Points ofinteraction include, but are not limited to, contact points, localizedproximity and/or any other localized user interaction.

In the context of the present description, a common axis system refersto an axis system upon which all gesture data may be evaluated. Forexample, in one embodiment, the common axis system may be tied to thedevice geometry (i.e. the “horizontal” axis is always parallel to thelong edge of the main display, etc.). In another embodiment, the commonaxis system may be tied to device orientation, such that the axis systemchanges depending on accelerometer data (though it is still common toall gestures).

Using a common axis system, an examination of the relative positions ofpoints of interaction associated with a gesture may facilitatedifferentiation. For example, in one embodiment, rocker pressuregestures may only be recognized if a line between the two contact pointsis within a predefined deviation from the common horizontal axis (andthe tipping pressure gesture available in all other cases). In anotherembodiment, the similar gestures may all be available at all times, butthe location of points of interaction with respect to the common axissystem may be used to give priority to certain gestures over others incertain situations.

In various embodiments, similar or identical gestures may bedistinguished from each other through the timing associated with theirexecution. For example, in one embodiment, the performance of a rockerpressure gesture may have to be done within a certain amount of time,otherwise it may be interpreted as multiple tipping pressure gestures.In another embodiment, a tipping pressure gesture may have to be heldfor a certain amount of time before being recognized, such that thebeginning of a rocker pressure gesture may not be identified as atipping pressure gesture.

In various embodiments, one or more pressure-based gestures may becombined with other multi-touch and/or pressure-based gestures, suchthat a user may give multiple gesture-based instructions withoutbreaking contact with one or more interaction surfaces. For example,suppose a user finger is at 3 o'clock and a user thumb at 9 o'clock andfinger and thumb are one inch apart, both on a front touchscreen. Theuser may slide finger and thumb further apart. In one embodiment, thismay result in an increase in selection area, for example. The user maythen increase finger pressure. This may result in the increasedselection area being rotated.

In other embodiments, other combinations and permutations of variousinputs and gestures on various surfaces and using various sensors may beused to simplify the user interface and make pressure-based gesturesmore intuitive. As an option, such gestures may be pre-programmed, orprogrammed by the user, or a combination of both.

Pattern-based gestures may be simple to perform and easy for a user toremember. For this reason, they are well suited to a number ofapplications. One of the most basic pattern-based gestures is the fingerpress. In various embodiments, a pattern-based gesture made up of one ormore fluctuations of contact pressure between a low level and a higherlevel at a single contact point may be associated with often usedoperations. For example, in one embodiment, a double press (i.e.increase then decrease contact pressure twice) may activate an interfaceto switch between active applications in a multitasking environment. Inanother embodiment, a triple press may activate a pop-up menu populatedwith iconic representations of the user's preferred actions, contacts,applications, and scripts. In one embodiment, these gestures may besurface agnostic. For example, the application switching interface maybe activated no matter which interaction surface received the doublepress. In another embodiment, these gestures may be surface specific,allowing other system processes and applications to assign operations tothese simple gestures without colliding with a system-wide gesture. Forexample, a triple press on a side surface may activate a pop-upfavorites menu, while a triple press on a back surface may activate anapplication-specific contextual menu.

Another simple pattern-based gesture is the pinch gesture. In variousembodiments, this gesture is performed by making simultaneous contactwith two different interaction surfaces such a line connecting the twocontact points is roughly parallel to the force vectors being applied atsaid points. An example is pinching a device between a finger and athumb, the finger and thumb contacting different interaction surfaces.In another embodiment, this gesture may be pressure based. Variations onthis gesture may incorporate multiple pinches (i.e. fluctuations ofcontact pressure between a low level and a higher level, similar to thefinger presses previously described).

These simple gestures may be associated with often used operations,including but not limited to, activating device interfaces (i.e.backtouch interface, proximity sensitivity, pressure sensitivity, etc.),displaying a common system interface (i.e. application launcher, systemsettings, etc.), displaying a menu of user defined “favorites” (i.e.applications, contacts, songs, movies, web bookmarks, recently useddocuments, etc.), mute volume, and/or any other often used interface oroperation. Of course, in other embodiments, these gestures may beassociated with any operation, function, or interface.

Building off the previous gesture, a pinch slide gesture is an exampleof a pattern-based generalized gesture which combines a pinch with asliding motion. In some embodiments, it may be described as a 1-6gesture, though it is not limited to just front/back interaction. Invarious embodiments, this gesture may be performed by pinching thedevice, then sliding the pinch across the interaction surfaces whilemaintaining contact. In one embodiment, a contact pressure above apredefined threshold may also be required. This gesture mimics thetactile experience of pushing or pulling an object such as a lever orcord.

In one embodiment, a pinch slide gesture may be used to quickly movethrough an alphabetical list, similar to using tabs to quickly find acontact quickly in a paper address book. In another embodiment, thisoperation may be adopted to moving quickly through other sorted lists ofitems, including but not limited to song lists, application lists,eBooks, and/or any other collection of organized data. As an option, thedisplay may invite the use of this gesture by displaying virtual tabs(i.e. the alphabet, numbers, etc.) along a side of the display where thegesture would be performed.

In another embodiment, a pinch slide gesture may be used to quicklyselect text. For example, in one embodiment, a selection may beinitiated by pinching at the desired location. The selection may beexpanded by sliding the pinch to the desired selection end. In anotherembodiment, this method of selection may be adapted to selecting aportion of an image or graphic (i.e. pinch at one corner of desiredselection bounding box and sliding to opposite corner, etc.).

In another embodiment, a pinch slide may be used to move quickly througha large document (i.e. word processing document, web page, image, etc.).For example, in one embodiment, the user may slide a pinch up and downthe device, changing the displayed portion of the document relative tothe position of the pinch (i.e. the top of the device represents thestart of the document, the bottom of the device represents the end, andthe relative location of the pinch becomes the portion of the documentdisplayed. In another embodiment, the pinch slide may have to beinitiated at a particular location to activate this document navigationfunctionality. For example, a web browser may have an icon near the topof the display that activates pinch slide navigation when the gesture isinitiated on the icon. This functionality may be adapted to twodimensional navigation in a large image, displaying the portion of theimage represented by the relative location of the pinch.

In yet another embodiment, a pinch slide gesture may be used to displaymenus of common operations or applications. For example, in oneembodiment, a pinch slide gesture which begins near an edge of a displayand then moves inward may cause a menu or window to slide in from thatedge of the display. As an option, the menu or window may remain visibleuntil a selection is made. In another embodiment, there may be differentmenus or windows associated with each edge of a display. In stillanother embodiment, a window may be closed (i.e. slid back out of view)by using a pinch slide to pull it out a bit farther, then releasing it,similar to rolling up a window shade.

In one embodiment, a user interface may be utilized to present a contextbased menu for the user. In one embodiment, a user may interact with adisplay element by exerting contact pressure on a front interactionsurface over contact area. At the same time, the user may be in contactwith a back interaction surface, over contact area. In variousembodiments, contextual menu may be displayed near the backtouchcontact, after the user performs a predefined static gesture withincontact area. The user may then select a menu item using small movementsand contact pressure applied on the back interaction surface.

In one embodiment, the user interface may be utilized to provide easy,quick access to a plurality of favorite operations, applications,contacts, documents, and/or other types of objects. In variousembodiments, favorites panel may be displayed in response to a gesture,the selection of a hardware or software button, voice command,accelerometer input (i.e. shaking the device, flicking the users wrist,etc.), and/or any other form of user input. In one embodiment, oncefavorites panel is displayed, a user may select an item using a slidepad located on the side of the device.

In one embodiment, a user may configure which items are displayed in thefavorites panel. In another embodiment, the favorites panel may beautomatically populated by the device, based upon factors which mayinclude, but are not limited to, historical usage, date of last use,frequency of use, popularity information obtained from a remote system,and/or any other factors.

In the various embodiments described above, different combinations ofuser input have been associated with different actions. It should beunderstood that the described user inputs may be associated with anyaction, function, operation or interface, just as the described actionsmay be triggered by any combination of user inputs, according todifferent embodiments.

In the context of the present description, a cue refers to feedback,visual or otherwise, which is provided to the user. Examples of cuesinclude, but are not limited to, the display logic within selectionfunctions, visual representation of contact point movement, proximityfeedback, contact pressure level feedback, and/or any other form of userfeedback. For example, in one embodiment, the anchor object may behighlighted (e.g., change of color, text highlight, 3D representation,flashing or other dynamic selection area behavior, etc.)

In various embodiments, cues may include 3D or pseudo-3D effects. Forexample, in one embodiment, the anchor object may be made to appear tobe floating above a background image, using 3D cues.

In various embodiments, a cue may modify a 2D representation into apseudo-3D representation responsive to user inputs such as deviceorientation. For example, in one embodiment, the shadow of an object maybe adjusted according to device orientation, to provide the illusionthat an object is floating above a background. In another embodiment,the pseudo-3D representation may be responsive to user focus (including,in some embodiments, user gaze).

FIG. 22 shows a 3D layered user interface 2200, in accordance with oneembodiment. As an option, the user interface 2200 may be implemented inthe context of the architecture and environment of the previous Figuresor any subsequent Figure(s). Of course, however, the user interface 2200may be implemented in any desired environment. The aforementioneddefinitions may apply during the present description.

In the context of the present description, a 3D layered user interfacerefers to a user interface in which displayed objects may exist in oneof a plurality of layers. For example, see FIG. 22.

As shown, user interface 2200 is comprised of two layers, a front layer2202 and a back layer 2204. These layers are depicted in a staggeredarrangement, to illustrate the depth; it should be noted that in variousembodiments, the layers would be aligned. Object 2206 exists in thefront layer, while object 2208 exists in the back layer. In variousembodiments, a user may interact with the layers separately.

In various embodiments, a 3D layered user interface may be implementedin a layered display device. In the context of the present description,a layered display device refers to a device with at least one displaythat is made up of a plurality of overlapping display layers, each layerable to display content independent of other layers, with all layersfacing the same direction. For example, in one embodiment of a layereddisplay device, the device may have a display made up of a transparentdisplay located on top of a second display, both facing forward. Inanother embodiment, the display layers may be separated by a non-opaquematerial, to enhance the layered appearance.

In another embodiment of a layered display device, the display layersmay include one or more e-ink layers. In yet another embodiment, thedisplay layers may include one or more LCD layers. In still anotherembodiment, the display layers may include both e-ink and LCD layers.Other embodiments may include any combination of layers embodying anydisplay technology.

In various embodiments, a 3D layered user interface may be implementedin a device having single layer displays through the use of virtualdisplay layers. In the context of the present description, a virtualdisplay layer refers to a collection of display elements which have allbeen assigned the same apparent depth within the 3D layered userinterface. In various embodiments, a 3D layered user interface may makeuse of multiple virtual display layers. For example, in one embodiment,a 3D layered user interface may have a virtual foreground display layerand a virtual background display layer.

Additionally, in the context of the present description, a displayelement refers to the region of the display allotted to an identifiablevisual object. Identifiable visual objects may include, but are notlimited to, digital objects (i.e. images, text boxes, UI controlwidgets, selections, etc.), subject matter objects (i.e. people within aphotograph, letters and/or words within text, etc.), and/or any othertype of identifiable visual object. When located in a virtual displaylayer, display elements may be referred to as 3D display elements.

In various embodiments, virtual display layers may be given theappearance of depth through the use of 3D depth cues. In the context ofthe present description, a 3D depth cue refers to an effect,manipulation, transformation, animation, or operation which gives avisual indication of simulated depth. For example, in one embodiment, a3D depth cue may be a blur operation, such that layers located atsuccessively greater depths may appear blurrier than those closer to theuser. In various embodiments, one or more 3D depth cues may be used togive the appearance of depth to one or more virtual display layers. Inone embodiment, different 3D depth cues may be used for differentvirtual display layers. In another embodiment, 3D depth cues may be usedin conjunction with a 3D layered user interface implemented in a layereddisplay device, to enhance the layered appearance.

In one embodiment, a 3D depth cue may include the addition of a shadowelement to display elements located within a virtual display layer,making them to appear to float above the next virtual display layer. Asan option, the location of the light source(s) casting the shadows maybe based in part on data obtained from one or more cameras located onthe host device.

In one embodiment, a 3D depth cue may include the addition of adepth-based fog, giving the appearance that the layers exist in anenvironment with a thin, uniform fog. In this way, distant objects maybe “foggier” than objects close to the user.

In one embodiment, a 3D depth cue may include a depth-based apparentrate of movement. For example, in a situation where a user is swipingthrough multiple screens of layered content, the layers closer to theuser may appear to move faster than those more distant, giving theappearance of depth.

In one embodiment, a 3D depth cue may include a time-dependent visualtransformation. For example, in one embodiment, a background layer maybe transformed such that it appears to be below rippling water, whilethe foreground layer appears to be floating on the surface. In anotherembodiment, the visual transformation may be static.

In one embodiment, a 3D depth cue may include animated visual elementswhich appear to exist in between layers. Elements may include, but arenot limited to, birds or insects flying, shooting stars, tiny peoplewalking, grass blowing in the wind, and/or any other visual element.

In one embodiment, a 3D depth cue may include moving and/or transformingdisplay elements within a virtual display layer based upon detected usergaze and/or head position. For example, in one embodiment, displayelements may be compressed and virtual display layers spread apart ifthe device determines the user is viewing the display from an angle, thedegree of transformation varying with estimated viewing angle. Inanother embodiment, display elements located on different virtualdisplay layers may be slide around within their respective layers as theuser changes their angle of viewing, allowing them to “look around acorner” to see display elements that would be obscured when viewed headon.

In one embodiment, a 3D depth cue may include moving and/or transformingdisplay elements within a virtual display layer based upon changes indevice orientation detected through one or more hardware interfaces(i.e. accelerometer, tilt sensor, compass, etc.).

In one embodiment of a 3D layered user interface, the 3D cues may beimplemented such that the user interface has an apparent depth equal tothe thickness of the device. In another embodiment, the 3D cues may beimplemented such that the user interface has an apparent depth equal tothe distance between a front display and a backtouch interface.

In various embodiments, a user may interact with the layers separately.For example, in one embodiment, a front interaction surface may be usedto interact with display elements in a foreground display layer, and aback interaction surface may be used to interact with display elementsin a background display layer. See, for example, FIG. 22.

User interface 2200 is being implemented in a device having front andback touch-sensitive interaction surfaces. As shown, a user maymanipulate display element 2206, located in front layer 2202, through agesture 2210 performed on the front interaction surface. At the sametime, a user may manipulated display element 2208, located in back layer2204, through a gesture 2212 performed on the back interaction surface.In one embodiment, the manipulation of one of these display elements maybe done completely independent of the other display element.

In one embodiment of a 3D layered user interface, a front inputinterface may be used to move display elements on a virtual foregrounddisplay layer. In another embodiment of a 3D layered user interface, arear input interface may be used to move display elements on a virtualbackground display layer.

In various embodiments, there may be display layers with which a usermay not interact. For example, in one embodiment, there may be anemphasis display layer situated in front of all other display layers. Inthe context of the present description, an emphasis display layer refersto a display layer (virtual or physical) which is used to provide visualemphasis to one or more display elements without providing independentmeans of user interaction. In other words, when a user interacts with adisplay element located in an emphasis display layer, they might alsointeract with one or more other layers. For example, in one embodiment,an emphasis display layer may be used to indicate results of a textsearch within a document (i.e. target words appear to float above thedocument, etc.). Although located on a different display layer, any textselection made by the user may incorporate text from both the emphasisdisplay layer and the display layer housing the document. In anotherembodiment, an emphasis display layer may cause hyperlinks within awebpage to appear to float above the rest of the page, though still ableto be selected along with non-hyperlink text.

In another embodiment, an emphasis display layer may be used to displayuser avatars floating above the text of a chat session; the user may notinteract with the avatars. Other examples of the use of an emphasisdisplay layer may include, but are not limited to, a status bar floatingat the top of a display, pop-up volume indicators which appear when thevolume is changed, icons within the status bar, and/or any othercircumstance where visual emphasis is desired.

Another example of a display layer with which a user may not interact isan ambiance display layer. In the context of the present description, anambiance display layer refers to a display layer (virtual or physical)which is used to display decorative display elements with which a usermay not directly interact with. For example, in one embodiment, one ormore ambiance display layers may be used to create the appearance ofthree-dimensional structure within the 3D layered user interface (i.e.walls, shelves, backdrop, etc.). In another embodiment, an ambiancedisplay layer may be used to display a wallpaper or some other backdropwhich is present behind the elements and controls of the user interface.In yet another embodiment, a user may customize one or more ambiancedisplay layers through a separate user interface, but not through directinteraction.

In one embodiment of a 3D layered user interface, a rear touch input maybe used to control display elements located on a virtual display layer.In another embodiment, a rear touch input may be used together with afront touch input to control one or more display elements on one or morevirtual display layers.

In other embodiments of a 3D layered user interface, a user may interactwith one of a plurality of layers through a back interaction surface,the layer being selected using a pressure-sensitive front interface. Forexample, in one embodiment, a user may select one of a plurality ofdisplay layers by applying a predefined level of contact pressure on thefront interaction surface, and interact with the selected layer using aback interaction surface. As an option, 3D depth cues may be used toindicate “moving” through the display layers as the contact pressure ischanged (i.e. magnifying and fading display layers as they are passedby, sharpening previously blurry display layers as they grow closer,etc.).

In one embodiment, one or more display layers associated with a 3Dlayered user interface may only be interacted with through coordinateduser input on multiple interaction surfaces. For example, in oneembodiment, a touch input on the front of the device together with atouch input on the back of the device may control the overlap betweentwo or more virtual display layers.

In one embodiment, display elements may be assigned to virtual displaylayers, just as they may be assigned to physical display layers in alayered display device. In another embodiment, the process of assigningdisplay elements to virtual display layers may be the same as theprocess of assigning display elements to physical display layers in alayered display device. In yet another embodiment, a 3D layered userinterface may be designed such that it may take advantage of physicaldisplay layers, if present, or use virtual display layers if only singlelayer displays are available. It should be understood that allfunctionality and embodiments described with respect to virtual displaylayers may also be implemented in a layered display device.

In various embodiments, a 3D layered user interface for augmentedreality may use 3D depth cues to visually differentiate augmentingdisplay elements associated with physical locations near the user fromthose associate with distant physical locations. In one embodiment, 3Ddepth cues may be used to give augmenting display elements an apparentdistance from the user roughly equal to the physical location with whichthey are associated. In another embodiment, 3D depth cues may be used toaugment the video signal such that it has a three dimensionalappearance.

FIG. 23 shows exemplary pattern-based gestures 2300, in accordance withone embodiment. As an option, the gesture 2300 may be implemented in thecontext of the architecture and environment of the previous Figures orany subsequent Figure(s). Of course, however, the gesture 2300 may becarried out in any desired environment. It should also be noted that theaforementioned definitions may apply during the present description.

In the context of the present description, a pattern-based gesturerefers to a gesture defined, at least in part, by a path through a phasespace of one or more dimensions. See, for example, the pattern-basedgestures 2300.

In some embodiments, pattern-based gestures may be based upon pathsthrough a phase space whose dimensions do not include any measure oflocation on an interaction surface. In other words, in theseembodiments, pattern-based gestures may not depend upon the location ormovement of user interaction across an interaction surface. In oneembodiment, these gestures may act as gesture components, which may becombined with other gesture components to form generalized gestureswhich may or may not be based upon location on or movement across aninteraction surface.

See, for example, the pattern-based gesture 2302, described by a phasespace path which represents the time evolution of the touch stateassociated with a contact point located on a front interaction surface.The location of the contact point upon the interaction surface is of noimportance.

Pattern-based gesture 2302 is based upon three touch state transitions.At time t1, the contact point changes from touch state s0 to s1. Similarchanges of state occur at t2 and t3. In various embodiments, these touchstate transitions may be represented by ordered 2-tuples. For example,the first transition may be represented as (s1, t1). The pattern-basedgesture itself may be represented as an ordered sequence of statetransitions. For example, pattern-based gesture 2302 may be representedas {(s1,t1),(s2,t2),(s0,t3)}.

In other embodiments, pattern-based gestures may be based upon pathsthrough a phase space that may include one or more measures of physicallocation upon an interaction surface. In other words, there may existpaths through the phase space that describe motion across an interactionsurface.

In various embodiments, a pattern-based gesture may be based upon pathsthrough a phase space which does not include time as a dimension. Forexample, in one embodiment, a pattern-based gesture may be defined by aseries of transitions between touch states, where it does not matter howlong the individual touch states are maintained.

In other embodiments, a pattern-based gesture may depend upon time tothe extent that the entire path through phase space may be completedwithin a predefined amount of time (though still independent of how muchtime is spent at each state along the path). In still other embodiments,the gesture may be defined, in part, by the time spent on each leg ofthe path through phase space.

In one embodiment, a time-independent pattern-based gesture may becombined with a dynamic touch gesture (i.e. a one finger swipe, etc.) toform a generalized gesture.

In various embodiments, a touch state may be associated with a specificcontact point upon a pressure-sensitive interaction surface. In otherembodiments, the device may not be able to resolve the specific sourceof pressure exerted upon an interaction surface; in such cases, thepressure may be represented by surface touch states. In the context ofthe present description, a surface touch state is a partitioning of therange of measurable pressures exerted upon a surface (similar to touchstates associated with contact points, but not contact point specific).

In various embodiments, there may exist a subset of generalized gesturesreferred to as pattern-based generalized gestures. In the context of thepresent description, a pattern-based generalized gesture refers to apattern-based gesture which includes input from multiple sources. Forexample, see pattern-based gesture 2306, which is represented by a paththrough a two-dimensional phase space.

As shown, gesture 2306 is a pattern-based generalized gesture based uponthe evolution of a touch state on a front interaction surface and a backinteraction surface of a device, in accordance with one embodiment. Thepattern-based gesture components are 2302 and 2304.

As depicted, gesture 2306 is represented by a state transition matrix oftouch states, with transitions between touch states marked bydirectional arrows, in accordance with one embodiment. In the context ofthe present description, a state transition matrix refers to an iconicdepiction of a path through a phase space.

As shown, 2306 represents the phase space made up of all nine possiblecombinations of the three possible front and back touch states. In oneembodiment, these nine combinations may be referred to as touch statepoints. In another embodiment, the representation may also be shown asthree-dimensional, with time as the third dimension.

It should be noted that the use of descriptors such as “front” and“back” in this example are for the sake of simplicity. In variousembodiments, gesture 2306 may be performed using any two surfaces on adevice, even if the device does not have distinct front and backsurfaces. Additionally, in other embodiments, pattern-based generalizedgestures such as 2306 may include any number of additional dimensions,each describing a form of user input and/or time.

In various embodiments, a pattern-based generalized gesture may berepresented as an ordered sequence of n-tuples. For example, in oneembodiment, the gesture 2306 may be represented as a sequence of2-tuples, (front touch state, back touch state). Specifically, gesture2306 may be represented as {(s1,s0), (s2,s2),(s0,s1)}. In anotherembodiment, gesture 2306 may be represented as a sequence of 3-tuples,of the form (front touch state, back touch state, time).

While exemplary gesture 2306 is based on a path through a touch statephase space, pattern-based gestures may also be based upon types andsources of user input which are not broken into discrete states (i.e.contact pressure level, etc.). Additionally, in some embodiments,pattern-based gestures may be defined in terms of the relative states ofinput, rather than exact. For example, in one embodiment, apattern-based gesture may be defined in terms of relative pressure. Inother words, rather than require that a fixed pressure be achieved, auser may simply cause a particular change in pressure to occur. In oneembodiment, such a pattern-based gesture may be defined in terms ofgesture attributes, including derived input such as pressure velocity.

In various embodiments, the use of pattern-based gestures based uponrelative states may be used to trigger some form of user assistance.These patterns are well suited to trigger some form of user assistance,as they may be performed and recognized in the middle of performing adifferent gesture. For example, in one embodiment, a pattern-basedgesture defined as a rapid 20% decrease and increase of contact pressureof any contact, done three times, may present to the user an interfaceproviding help specific to what the user was doing at the time. Possiblecontexts include, but are not limited to, providing a list of possiblegestures when help is requested during performance of a gesture,application help or manual depending on what application is active, adetailed explanation of a user interface control which was beingselected when help was requested, and/or any other scenario where a useris operating the device.

In some embodiments, pattern-based gestures may be recognized in theform of an ordered sequence of tuples using a decision tree. The use ofa decision tree, or similar form of logic, has the advantage of beingcomputationally inexpensive. This method may be more appropriate forpattern-based gestures which are represented by paths through an easilyenumerated phase space. For example, this method of gesture recognitionmay be more appropriate for a gesture like 2306 than a similar gesturebased upon contact pressure levels, rather than touch states.

In other embodiments, the pattern-based gestures may be recognized usingpattern recognition or pattern matching. For example, in one embodiment,pattern-based gestures may be recognized using the methods, or similarmethods, as those used to determine a gesture shape in a gesturecomponent. In various embodiments, the pattern-matching algorithms andmethods may search for a match within a predefined margin of error.

In one embodiment, pattern recognition or pattern matching to identifypattern-based gestures may be performed by the device. As an option,this functionality may be part of the operating system. In anotherembodiment, the pattern recognition or pattern matching may be performedusing compute resources other than those of the device. Alternativecompute resources include, but are not limited to, a similar device,computing resources on a local network, cloud computing resources,and/or any other computing resource. In yet another embodiment, thepattern recognition or pattern matching may be performed using deviceand/or alternative computing resources combined with help from the user.

In one embodiment, pattern recognition algorithms and methods may searchfor a match between input and predefined patterns, within a certainprobability. In another embodiment, the pattern recognition algorithmsmay be probabilistic and use statistical inference to find the bestpattern match for a given set of input.

In one embodiment, probabilistic pattern recognition algorithms mayoutput a probability that the input being described by a given pattern.In one embodiment, this probability may be reported to the user, eitherspecifically (i.e. displayed as a number or percentage, etc.) or insummary (i.e. a label, a color coded border, an icon, etc.). In anotherembodiment, this probability may be used to alter or modify a selection.In yet another embodiment, this probability may be used to alter ormodify one or more display properties.

In various embodiments, probabilistic pattern recognition algorithms mayalso determine the n best matches for the given input. In oneembodiment, a user may specify the value of n. In another embodiment,these best matches may be reported to the user as a list of gesturenames and/or iconic representations of the gestures. As an option, theassociated probabilities may be reported as well.

In another embodiment, this list of probable gestures may be displayedto the user in response to a user input, such as a gesture associatedwith user assistance. In yet another embodiment, this list of probablegestures may be displayed to the user if the recognition algorithms werenot able to recognize a gesture with a probability above a predefinedthreshold. The user may be able to select the intended gesture from thelist; upon selection, the associated operation may be performed. As anoption, one or more aspects of the list items may depend upon theassociated probability of recognition. Possible aspects may include, butare not limited to, text size, button size, color, and/or any otheraspect or property that may be associated with the list.

As a specific example, in one embodiment, the user may be typing on asoft keyboard and performs a gesture. The device then determines withprobability 80% the gesture corresponds to pressing the letter W, withprobability 15% the gesture corresponds to pressing Q, and withprobability 5% that the user intended to press E. In this situation, thedevice may enlarge the W key by a large amount, enlarge the W key by asmaller amount, and enlarge the Q key by a still smaller amount.

In addition to gesture recognition, various embodiments may also performuser intent prediction. In the context of the present description,gesture prediction refers to a process of estimating user intent byassigning probabilities to candidate gestures based upon historical andreal time use data. For example, in one embodiment,

In various embodiments, the process of gesture recognition may includethe computation of the probability of user intent. In the context of thepresent description, computation of the probability of user intentrefers to the process of assigning probabilities to potential useractions, inputs, and intentions, based upon historical and current usedata. Examples of historical data include, but are not limited to, oftenmisspelled words, actions consistently followed by a correction,utilization of particular gestures in different use scenarios, and/orany other data which may establish a use pattern.

The estimation of user intent may enhance the user experience by makingthe device more responsive to user input. In various embodiments,computation of the probability of user intent may facilitate the entryof text though an interaction surface. For example, in one embodiment,frequently made spelling mistakes may be automatically corrected. Inanother embodiment, the user may be prompted with the word determined tobe most likely to be what the user is intending to type.

As an option, the user may be able to accept or decline proposed wordcompletions or proposed spelling corrections through a pressure-basedgesture. For example, in one embodiment, a user may accept or decline aproposed completion or correction with a series of taps on a backtouchinterface (i.e. one tap for accept, two taps for decline), in additionto keyboard based methods. In another embodiment, a user may bepresented with a plurality of possible words to be used for autocompletion. As an option, these words may be ordered depending upon aprobability based upon historical usage. The words may be presented tothe user in a line, with one word highlighted as a selection. In anotherembodiment, a user may cycle through proposed words with a backtouchgesture, such as a single finger swipe in the direction the words shouldbe cycled in. Of course, these actions may be associated with any othertype of gesture, including pattern-based gestures.

In various embodiments, gesture recognition may be enhanced bycomputation of the probability of user intent. For example, in oneembodiment, probabilities may be assigned to potential gestures basedupon historical gesture usage with similar context (i.e. application,selection mode, etc.). In another embodiment, estimated user intent maygive weight to certain gestures during the recognition process. In thisway, the gesture recognition process may be performed more efficiently,by considering the most likely gestures early in the process.

In various embodiments, the computation of the probability of userintent may affect the user interface. In various embodiments, the userinterface may adapt in response to the user's intended form ofinteraction. For example, in one embodiment, upon determining that theprobability that the user is performing a virtual control knob gesturehas exceeded a predefined probability, and certain context requirementshave been satisfied, a virtual control knob may appear for the user tointeract with. In this way, the user is given visual feedback that theirinput is being received in the manner they intended. Examples of contextrequirements may include, but are not limited to, the user performingthe gesture in the vicinity of a user interface object which may becontrolled via a virtual control knob (i.e. slider, date, time, etc.),the virtual control knob gesture has not been reassigned to a differentfunction by the active application, and/or any other requirement toensure that a virtual control knob only appears when the user sointends.

Pattern-based gestures may be simple to perform and easy for a user toremember. For this reason, they are well suited to a number ofapplications. One of the most basic pattern-based gestures is the fingerpress. In various embodiments, a pattern-based gesture made up of one ormore fluctuations of contact pressure between a low level and a higherlevel at a single contact point may be associated with often usedoperations. For example, in one embodiment, a double press (i.e.increase then decrease contact pressure twice) may activate an interfaceto switch between active applications in a multitasking environment. Inanother embodiment, a triple press may activate a pop-up menu populatedwith iconic representations of the user's preferred actions, contacts,applications, and scripts. In one embodiment, these gestures may besurface agnostic. For example, the application switching interface maybe activated no matter which interaction surface received the doublepress. In another embodiment, these gestures may be surface specific,allowing other system processes and applications to assign operations tothese simple gestures without colliding with a system-wide gesture. Forexample, a triple press on a side surface may activate a pop-upfavorites menu, while a triple press on a back surface may activate anapplication-specific contextual menu.

Another simple pattern-based gesture is the pinch gesture. In variousembodiments, this gesture is performed by making simultaneous contactwith two different interaction surfaces such a line connecting the twocontact points is roughly parallel to the force vectors being applied atsaid points. An example is pinching a device between a finger and athumb, the finger and thumb contacting different interaction surfaces.In another embodiment, this gesture may be pressure based. Variations onthis gesture may incorporate multiple pinches (i.e. fluctuations ofcontact pressure between a low level and a higher level, similar to thefinger presses previously described).

These simple gestures may be associated with often used operations,including but not limited to, activating device interfaces (i.e.backtouch interface, proximity sensitivity, pressure sensitivity, etc.),displaying a common system interface (i.e. application launcher, systemsettings, etc.), displaying a menu of user defined “favorites” (i.e.applications, contacts, songs, movies, web bookmarks, recently useddocuments, etc.), mute volume, and/or any other often used interface oroperation. Of course, in other embodiments, these gestures may beassociated with any operation, function, or interface.

Building off the previous gesture, a pinch slide gesture is an exampleof a pattern-based generalized gesture which combines a pinch with asliding motion. In some embodiments, it may be described as a 1-6gesture, though it is not limited to just front/back interaction. Invarious embodiments, this gesture may be performed by pinching thedevice, then sliding the pinch across the interaction surfaces whilemaintaining contact. In one embodiment, a contact pressure above apredefined threshold may also be required. This gesture mimics thetactile experience of pushing or pulling an object such as a lever orcord.

In one embodiment, a pinch slide gesture may be used to quickly movethrough an alphabetical list, similar to using tabs to quickly find acontact quickly in a paper address book. In another embodiment, thisoperation may be adopted to moving quickly through other sorted lists ofitems, including but not limited to song lists, application lists,eBooks, and/or any other collection of organized data. As an option, thedisplay may invite the use of this gesture by displaying virtual tabs(i.e. the alphabet, numbers, etc.) along a side of the display where thegesture would be performed.

In another embodiment, a pinch slide gesture may be used to quicklyselect text. For example, in one embodiment, a selection may beinitiated by pinching at the desired location. The selection may beexpanded by sliding the pinch to the desired selection end. In anotherembodiment, this method of selection may be adapted to selecting aportion of an image or graphic (i.e. pinch at one corner of desiredselection bounding box and sliding to opposite corner, etc.).

In another embodiment, a pinch slide may be used to move quickly througha large document (i.e. word processing document, web page, image, etc.).For example, in one embodiment, the user may slide a pinch up and downthe device, changing the displayed portion of the document relative tothe position of the pinch (i.e. the top of the device represents thestart of the document, the bottom of the device represents the end, andthe relative location of the pinch becomes the portion of the documentdisplayed. In another embodiment, the pinch slide may have to beinitiated at a particular location to activate this document navigationfunctionality. For example, a web browser may have an icon near the topof the display that activates pinch slide navigation when the gesture isinitiated on the icon. This functionality may be adapted to twodimensional navigation in a large image, displaying the portion of theimage represented by the relative location of the pinch.

In yet another embodiment, a pinch slide gesture may be used to displaymenus of common operations or applications. For example, in oneembodiment, a pinch slide gesture which begins near an edge of a displayand then moves inward may cause a menu or window to slide in from thatedge of the display. As an option, the menu or window may remain visibleuntil a selection is made. In another embodiment, there may be differentmenus or windows associated with each edge of a display. In stillanother embodiment, a window may be closed (i.e. slid back out of view)by using a pinch slide to pull it out a bit farther, then releasing it,similar to rolling up a window shade.

The pinch slide gesture is well adapted for providing input where one ofa plurality of values may be chosen; it is also easily combined with apinch gesture. For example, in one embodiment, a user may activate asystem and/or ringer volume slider with a double press pinch gesture,and then select a volume by sliding the pinch up and down the device. Inanother embodiment, a similar operation may be performed for backlightbrightness. In yet another embodiment, a user may cycle between systemvolume, ringer volume, and system brightness sliders with a pinchgesture, and be able to interact with said sliders using a pinch slide.In still another embodiment, the selection of system/ringer volume orbrightness may be determined by where on the device the pinch slide isbeing performed (i.e. left, middle, right, etc.).

A subset of pinch gestures are the side pinch gestures. In variousembodiments, the side pinch gesture is performed by applying contactpressure beyond a threshold value to opposite sides of the device, thesides being those other than the front and back. As an option, the usermay choose the predefined threshold value. In one embodiment, thepressure may be applied at contact points located on the sides such thata line connecting the contact points is roughly normal to the sides. Inanother embodiment, the side pinch gesture may also incorporate“presses” similar to the pinch and finger press gestures.

The side pinch gesture is a simple gesture well adapted for use withoften used operations. For example, in one embodiment, a side pinchgesture may toggle the device mute, or activate an application launcher.

A variation on the side pinch gesture is the squeeze gesture. In variousembodiments, a squeeze gesture is performed by applying contact pressurebeyond a predefined threshold to one or more contact points located onopposite sides of the device. For example, in one embodiment, thegesture may be performed by holding the device in one hand, in a naturalgrip, and applying pressure to two opposite sides by squeezing. As anoption, the squeeze gesture may incorporate “presses”, similar to thefinger press and pinch gestures.

The squeeze gesture is one of the easiest gestures to perform, and maybe reserved for operations which are to be available system wide,independent of what application is running. In various embodiments, thesqueeze gesture may be associated with commonly used operations. Forexample, in one embodiment, a double press squeeze gesture may be usedto answer a phone call. In another embodiment, a double press squeezegesture may be used to indicate an affirmative response to any on screenquery (i.e. accept proposed auto correction, accept proposed autocompletion, activate “ok” button in dialog boxes, etc.). As an option, acomplementary negative response gesture may be defined as well, agesture such as the combination of a single or double tap on the topside while squeezing the left and right sides.

In another embodiment, applying a squeeze gesture for a predefinedamount of time may be associated with a delete operation, to beperformed upon any selected or active object. As an option, the deleteoperation may be accompanied by a “crumpling paper” animation routine,as well as a prompt for user confirmation. In one embodiment, a user maynot use a squeeze gesture to confirm an operation triggered by a squeezeoperation (i.e. to prevent accidental implementation, etc.).

Another class of pattern-based gestures are the “no contact”pressure-based gestures. In some embodiments, the touch sensitiveinteraction surfaces require an implement of interaction which has acertain degree of conductivity in order to register contact. This classof gestures may be implemented in such devices, which are alsopressure-sensitive. In various embodiments, the “no contact”pressure-based gestures may be used to interact with the device insituations where direct contact is not possible (i.e. device is in case,device is in pocket, device is in purse, etc.).

In various embodiments, the “no contact” pressure-based gestures mayinclude variations of the finger press, pinch, and squeeze gestures, inaddition to others. In some embodiments, “no contact” pressure-basedgestures may require that the pressures being exerted do not create acontact point (i.e. pressure is exerted, but touch contact is notregistered). These gestures are well adapted to situations where contactis not feasible. For example, in one embodiment, a user may silence aringing phone by performing a rapid, one-finger double press on aninteraction surface while the device is in the user's pocket, purse, orany other flexible or semi-flexible vessel. In another embodiment, auser may perform a predefined pattern-based gesture to cause the mostrecently received communication (i.e. voice mail, email, SMS message,etc.) to be reported to the user through a Bluetooth audio device.

In various embodiments, gestures may be used to trigger a variety ofactivities.

FIG. 24 shows a user interface 2400 for defining custom gestures, inaccordance with one embodiment. As an option, the user interface 2400may be implemented in the context of the architecture and environment ofthe previous Figures or any subsequent Figure(s). Of course, however,the user interface 2400 may be implemented in any desired environment.The aforementioned definitions may apply during the present description.

In various embodiments, gestures may be programmed by the user. In otherembodiments, gestures may be learned by the device.

As shown, the user interface 2400 may be utilized to define a customgesture. For example, in one embodiment, the user interface may includea gesture name and/or an iconic representation of the gesture. Inanother embodiment, the iconic representation may be automaticallychosen by the system, depending upon defined gesture parameters. In yetanother embodiment, the user interface may contain a plurality ofbuttons 2402 which allow a user to save, load, copy, and/or deletecustom gestures. The user interface may also contain a list 2404 of alldefined custom gestures. As an option, the custom gestures may begrouped by context within the list.

In various embodiments, the user interface 2400 may contain a button2406 to allow the user to define a custom gesture. In one embodiment,selecting button 2406 may initiate a gesture recording session. In thecontext of the present description, a gesture recording session refersto a period of time wherein the device monitors and records allobservable user and system input. In another embodiment, selectingbutton 2406 may present to the user an interface with instructionsbefore initiating a gesture recording session. Instructions may include,but are not limited to, how to record the gesture, a list of all formsof input upon which a gesture may depend, how to end the recording,and/or any other information which may assist the user. In yet anotherembodiment, the user may be presented with a short countdown before thegesture recording session is initiated, to give the user time to preparefor the recording. As an option, the device may give some form of visualor auditory feedback to the user to indicate that the recording sessionhas begun.

In various embodiments, a gesture recording session may be terminated byuser input. For example, in one embodiment, a gesture recording sessionmay be terminated by the user through a vocal command, recognized by thesystem. In another embodiment, a gesture recording session may beterminated by the user through an sound which exceeds a predefinedvolume. In yet another embodiment, a gesture recording session may beterminated by the user by performing a gesture. As an option, thetermination gesture may be a reserved gesture.

In the context of the present description, a reserved gesture refers toa gesture which may not be reassigned by a user, application, orprocess. For example, in one embodiment, there may be a set of gestures,chosen for their simplicity, which are reserved for operationsfundamental to the user experience (i.e. a gesture to cycle throughactive applications running in a multitasking environment, etc.).

In still another embodiment, a gesture recording session may beterminated automatically after a predefined amount of time has elapsed.As an option, in one embodiment the user may specify the amount of timebefore the recording session begins.

In one embodiment, after the termination of a gesture recording session,the user may be prompted to repeat the gesture one or more times. As anoption, the user may not have to indicate when the gesture is completeafter the first recording session. In another embodiment, the repeatedperformance of the gesture may be used to better define the gestureparameters. For example, in one embodiment, gesture aspects which do notappear in every performance of the gesture may be indicated to the useras potentially irrelevant. In another embodiment, the system may useeach iteration to improve the recorded description of the gesture. Forexample, the system may calculate the probability of correctrecognition, using methods previously discussed, after each performance.As an option, the user may be prompted to repeat the gesture until thecalculated probability of correct recognition has exceeded a predefinedthreshold.

In various embodiments, the user interface 2400 may include a button2408 to allow a user to view a depiction of the performance of thecustom gesture as currently defined. For example, in one embodiment,selecting button 2408 may display an animated recreation of the gesturein the context of a wireframe model of the device. In anotherembodiment, different forms of user input may be represented bydifferent colors (i.e. pressure is red, touch is blue, proximity isgreen, etc.). As an option, changes in contact pressure level may berepresented by changes in the color representing pressure. In anotherembodiment, the device surfaces may be displayed flattened into a twodimensional plane. In still another embodiment, the gesture replay mayalso include one or more plots which depict the time evolution ofvarious gesture inputs, such as contact pressure or proximity associatedwith individual contacts or implements of interaction.

In various embodiments, the user interface 2400 may include a list 2410displaying all components of the currently defined gesture. For example,in one embodiment, list 2410 may be a nested hierarchical list, groupedby “expected implement of interaction” and input type (i.e. contact 1,contact 2, proximity 1, etc.). In another embodiment, list 2410 mayvisually indicate (i.e. italicized, colored, underlined, etc.) recordedgesture aspects which were determined to be potentially irrelevant tothe gesture. In yet another embodiment, list 2410 may break down theinput from each “expected implement of interaction” into basic inputcategories. Categories may include, but are not limited to, pressure,touch, surface identity, proximity, proximity location, and/or any otheraspect or type of user input.

The user interface 2400 may be utilized to specifically define or modifyaspects of a custom gesture. For example, in one embodiment, the userinterface 2400 may include a button 2412 to edit a gesture aspectselected in list 2410. In another embodiment, selecting button 2412 maypresent an interface to the user which may allow them to review andalter associated gesture aspects. This method of defining the gesturemay not be as intuitive as teaching the system the gesture throughrepeated performance, but it does allow much greater control over thegesture aspects.

In one embodiment, the user interface 2400 may include a plurality ofbuttons 2414 which allow a user to copy, create, and delete gestureaspects associated with the current gesture. In another embodiment, thecreation of a new gesture aspect may prompt the user to specify theinput type to create, and with which “expected implement of interaction”it should be associated. As an option, a user may create a new “expectedimplement of interaction”.

In one embodiment, the user interface 2400 may include a collection ofcheck boxes 2416 which allow a user to specify the context in which thecustom gesture may be performed. The contexts may include, but are notlimited to, universal (i.e. available at all times), text (i.e. activetext field, on-screen keyboard visible, etc.), application-specific,home (i.e. application chooser, etc.), selection (i.e. an activeselection of an object exists), and/or any other type of context.

When defining a custom gesture, the associated action may beestablished. As shown, user interface 2400 may be utilized to specifyand configure the action to be associated with the present gesture. Forexample, in one embodiment, the user interface may include a collectionof checkboxes 2418 representing different actions which may beassociated with the custom gesture.

In one embodiment, the collection of actions 2418 may include a checkbox2420 to indicate that the gesture may trigger the insertion of a textsnippet, as defined in a nearby text field. In another embodiment, theuser interface may include a collection of buttons 2422 which may beused to format the text snippet. As an option, the text snippet may bedefined as plain text, without formatting.

In another embodiment, the collection of actions 2418 may include acheckbox 2424 to indicate that the gesture may cause an application tolaunch. The user interface 2400 may also include a button which allowsthe user to specify which application should be launched when thegesture is performed.

In another embodiment, the collection of actions 2418 may include acheckbox 2426 to indicate that the gesture may set the system volume toa specified level. As an option, the user may be able to specify whetherthe gesture sets the system volume or a ringer volume. The userinterface 2400 may also include a slider which allows the user tospecify the volume to be associated with the present gesture.

In another embodiment, the collection of actions 2418 may include acheckbox 2428 to indicate that the gesture may trigger the creation of anew email message. In yet another embodiment, the user interface 2400may include a checkbox 2430 to indicate, if the gesture is performedwhile an object is selected, whether the selected object should beinserted into the new email message. Possible objects may include, butare not limited to, images, text, video, files, and/or any otherselectable media, file, or other kind of object. In still anotherembodiment, the user interface 2400 may also include a checkbox 2432 toindicate that the new email message should be addressed to a particularcontact. As an option, the user may be able to choose the email addressfrom a list of the user's contacts.

In another embodiment, the collection of actions 2418 may include acheckbox 2434 to indicate that the gesture may trigger the creation of anew SMS message. In yet another embodiment, the user interface 2400 mayinclude checkboxes 2436 and 2438 to indicate the inclusion of a selectedobject and/or specific destination for the message, similar to the “newemail message” action previously described. As an option, if a specificrecipient is not specified, the new SMS message may be directed to themost recent SMS message sender.

In another embodiment, the collection of actions 2418 may include acheckbox 2440 to indicate that the gesture may take advantage offunctionality provided by third party applications. In variousembodiments, developers of third party applications may be able toprovide functionality hooks that may be implemented by otherapplications or the operating system. For example, in one embodiment, asocial networking application may allow the user to associate the customgesture with the creation of a new posting within the social network.

In other embodiments, possible actions which may be associated with auser defined gesture may include, but are not limited to, a favoritecontact (i.e. gesture displays a pop-up interface with buttonsrepresenting different methods of communicating with the contact,including but not limited to telephone, email, SMS, social networks,etc.), a predefine energy saving profile, a predefined set ofapplication preferences, and/or any often repeated activity.

The user interface 2400 may be utilized to determine whether the customgesture may conflict with already established gestures. For example, invarious embodiments, the user interface may include a list 2442 ofconflicting gestures. In one embodiment, the list of conflicts may bemade up of other custom gestures, as well as system defined gestures. Inanother embodiment, the list may also include application specificgestures.

In yet another embodiment, items in the conflict list may be formattedto indicate their severity. For example, conflicting reserved gesturesmay be highlighted in red, while conflicting gestures which only existin a single application may be slightly greyed out. In variousembodiments, the conflict list may be created using pattern recognitionmethods previously discussed, or other methods and algorithms capable ofmatching patterns and/or data.

The user interface 2400 may be utilized to test a custom gesture, inaccordance with one embodiment. For example, in various embodiments, theuser interface may include a button 2444 which presents the user with aninterface which allows them to test the custom gesture as it iscurrently defined. In one embodiment, the gesture testing interface mayprovide the user with a plurality of forms of feedback. Feedback mayinclude, but is not limited to, current contact pressure levelassociated with each contact point, current touch state associated witheach contact point, probability of correct gesture recognition, currentgesture time, a visual representation of previous contact points, and/orany other form of user feedback.

In one embodiment, user interface 2400 may include statistics collectedas a result of the gesture testing process. These statistics mayinclude, but are not limited to, number of tests run with the currentgesture configuration, average probability of correct gesturerecognition, best probability of correct gesture recognition, identityof next most likely identified gesture (i.e. next closest gesture),minimum gesture performance time, maximum gesture performance time,average gesture performance time, and/or any other statistic related tothe testing process.

In some embodiments, user defined gestures may be recognized in anycontext they were intended for. In other embodiments, a user may have toperform a predefined activation gesture before using a custom gesture.

As a specific example of how custom gestures may be utilized, in oneembodiment, a user may define a gesture which is comprised of a triplefinger press on a top side, followed by a singer finger swipe across aback interaction surface. The user may associate this gesture with afavorite contact. Upon performing this gesture, the user may bepresented with a window showing a picture of the contact in addition tobuttons linked to their telephone number and email address. In this way,communication may be established with this contact, at any time, withnothing more than a gesture and a button press.

The various embodiments set forth herein may be implemented in a varietyof devices including, but not limited to, consumer devices, phones, cellphones, internet phones, music players, video players, cameras, socialinteraction devices, radios, TVs, watches, personal communicationdevices, electronic wallets, smart jewelry, personal computers, tablets,laptop computers, embedded systems, electronic glasses, and/or any otherdevice that includes one or more sensors or inputs. Possible inputs mayinclude, but are not limited to, keyboard, mouse, touchscreen(s),touchpad(s), interaction surfaces, a joystick, touchwheel, touchknob,touchbutton, touchball, trackball, scroll wheel, thumb-mouse, switch,button, wheel, knob, ball, pedal, voice recognition, audio command,audio prompt, gaze control, eye tracking, head position sensing, facialand/or gestural and/or postural expression recognition, and/or otherinputs and combinations of these. Possible sensors may include, but arenot limited to, range sensors, scanners, magnetometers, GPS receivers,accelerometers, cameras, depth sensors, light-field cameras, ambientlight sensors, pressure sensors, infra-red (IR) sensors, UV sensors,touch and/or proximity sensor(s), grasp sensors, material sensors,chemical sensors, physical sensors, electrical sensors, biologicalsensors, weight sensors, force sensors, mass sensors, gas sensors, vaporsensors, particle sensors, wireless sensors, RF and otherelectromagnetic sensors, and/or other sensors and combinations of these.

In various embodiments, the device may include one or more differentforms of displays and/or other outputs including, but not limited to,physical or other actuators, motors, tactile feedback or other tactileoutput, weight or mass feedback, force feedback or other force outputs,mechanical outputs, audio outputs, alarms, horns, bells, indicators,dials, meters, barcodes and/or other display patterns, vibrations,ultrasonic outputs, wireless and RF outputs, optical and light outputs,avatars, visual outputs, multiscreen displays, multilayer displays, 3Ddisplays, holographic projections and outputs, laser displays and otherlaser outputs, projection systems, heads-up displays, and/or otheroutputs or combinations of these.

In various embodiments, the device may support one or more types ofapplications including, but not limited to, search applications,contacts and/or friends applications, messaging applications, telephoneapplications, video conferencing applications, e-mail applications,communications applications, voice recognition applications, instantmessaging (IM) applications, blog and/or blogging applications,photographic applications, shopping applications, payment applications,digital camera applications, digital video camera applications, webbrowsing and browser applications, digital music player applications,digital video player applications, cloud applications, officeproductivity applications, and/or other types of applications orcombinations or multiple instances of these.

In other embodiments, different applications on the device may use oneor more interface devices that may be physical interface devices orvirtual interface devices including, but not limited to, touchscreens,touchpads, soft inputs, hard inputs, keyboards, buttons, knobs, sliders,switches, and/or any other kind of interface device.

In various embodiments, the device may have a common physicalarchitecture (i.e. display, touchscreen, etc.) such that the device maybe used with different applications with one or more common userinterfaces with one or more common properties (i.e. easy to use, simple,intuitive, transparent, etc.).

In various embodiments, user interfaces may include one or more physicalinterface devices (i.e. keyboard, joysticks, buttons, sliders, switches,knobs, other hard inputs, etc.) and/or one or more virtual or softinterface devices (i.e. soft keyboard, programmable buttons, UI sliders,UI knobs, check boxes, text fields, other soft inputs, etc.).

In various embodiments, the device may implement one or more types ofkeyboard (i.e. soft keyboard, physical keyboard, virtual keyboard,keypad, etc.). In one embodiment, the keyboard(s) may include standardkeyboard arrangements (i.e. QWERTY configurations, etc.), and/ornon-standard arrangements and/or symbols on the keys (i.e. soft keys,buttons, pixels, displayed icons etc.). In another embodiment, thekeyboard(s) may include a reduced number of symbols (i.e. letters,icons, soft keys, etc.) compared to the number of keys on a conventionalphysical keyboard. In yet another embodiment, one or more alternativekeyboards may make it easier for users to select one or more symbols inthe keyboard, and thus, one or more corresponding representations (i.e.letter, number, special symbol, graphics, emoticon, abbreviation, slang,acronym, etc.). In still another embodiment, one or more keyboards andtheir associated contents and/or layouts may be modified. For example,in one embodiment, one or more displayed symbols on the keyboard may bemodified in accordance with application, application state, devicestate, settings (i.e. language, etc.), and/or user actions.

In various embodiments, one or more keyboards may be customized to oneor more applications and/or users. For example, in one embodiment, oneor more keyboard embodiments may be customized to one or more usersbased on factors including, but not limited to, application states,stored application history, web cookies, a word usage history (i.e.lexicography, slang, individual usage, etc.), language, country, and/orany other factor. In another embodiment, one or more keyboards may bemodified to reduce the probability of user error when selecting one ormore keys when using the soft keyboards.

In various embodiments, the device may have multiple functions or rolesincluding, but not limited to, telephone, video conferencing, e-mail,instant messaging, blogging, digital photography, digital video, webbrowsing, digital music playing, social interaction, shopping,searching, and/or any other function or role. As an option, instructionsfor performing the device functions may be included in a computerreadable storage medium, or as a computer program product configured forexecution by one or more processors.

In various optional embodiments, the features, capabilities, and/ortechnology, etc. of the tablets, mobile devices, computing devices,networks, hardware, and/or software, etc. disclosed in the followingpatents/applications may or may not be incorporated into any of theembodiments disclosed herein: U.S. Pat. Nos. 7,479,949; 7,748,634;US20060017692; US20100188268; US20110145692; U.S. Pat. No. 7,954,101;US20070103454; US20100210329; US20070091825; US20060013219; U.S. Pat.No. 7,916,166; US20090213205; US20070296805; US20100205148;US20100188473; U.S. Pat. Nos. 7,441,196; 7,894,641; 7,966,578;7,479,949; U.S. Provisional Application No. 61/470,336, filed Mar. 31,2011, titled “SYSTEM, METHOD, AND COMPUTER PROGRAM PRODUCT FOR UTILIZINGIMAGE RECOGNITION TO PERFORM AN ACTION”; U.S. Provisional ApplicationNo. 61/470,391, filed Mar. 31, 2011, titled “SYSTEM, METHOD, ANDCOMPUTER PROGRAM PRODUCT FOR ENABLING A PERIPHERAL DEVICE TO UTILIZEFUNCTIONALITY ASSOCIATED WITH A MOBILE DEVICE”; and U.S. ProvisionalApplication No. 61/569,213, filed Dec. 9, 2011, titled “SYSTEM, METHOD,AND COMPUTER PROGRAM PRODUCT FOR MODIFYING CONTENT.” Each of theforegoing patents/applications are hereby incorporated by reference intheir entirety for all purposes.

(1) U.S. patent application Ser. No. 10/188,182 (US 2003-0076306 A1),“Touch Pad For Handheld Device,” filed Jul. 1, 2002; (2) U.S. patentapplication Ser. No. 10/722,948 (US 2005-0110768 A1), “Touch Pad ForHandheld Device,” filed Nov. 25, 2003; (3) U.S. patent application Ser.No. 10/643,256 (US 2005-0052425 A1), “Movable Touch Pad With AddedFunctionality,” filed Aug. 18, 2003; (4) U.S. patent application Ser.No. 10/654,108, “Ambidextrous Mouse,” filed Sep. 2, 2003; (5) U.S.patent application Ser. No. 10/840,862 (US 2006-0097991 A1), “MultipointTouchscreen,” filed May 6, 2004; (6) U.S. patent application Ser. No.10/903,964 (US 2006-0026521 A1), “Gestures For Touch Sensitive InputDevices,” filed Jul. 30, 2004; (7) U.S. patent application Ser. No.11/038,590 (US 2006-0026535 A1), “Mode-Based Graphical User InterfacesFor Touch Sensitive Input Devices” filed Jan. 18, 2005; (8) U.S. patentapplication Ser. No. 11/057,050 (US 2006-0181517 A1), “DisplayActuator,” filed Feb. 11, 2005; (9) U.S. Provisional Patent ApplicationNo. 60/658,777, “Multi-Functional Hand-Held Device,” filed Mar. 4, 2005;(10) U.S. patent application Ser. No. 11/367,749 (US 2006-0197753 A1),“Multi-Functional Hand-Held Device,” filed Mar. 3, 2006; and (11) U.S.patent application Ser. No. 29/281,695, “Icons, Graphical UserInterfaces, and Animated Graphical User Interfaces For a Display Screenor Portion Thereof,” filed Jun. 28, 2007. All of these applications areincorporated by reference herein in their entirety.

The soft keyboard embodiments may include standard (QWERTY) and/ornon-standard configurations of symbols on the displayed icons of thekeyboard, such as those described in U.S. patent application Ser. No.11/459,606 (US 2007-0152978 A1), “Keyboards For Portable ElectronicDevices,” filed Jul. 24, 2006, and Ser. No. 11/459,615 (US 2007-0152980A1), “Touch Screen Keyboards For Portable Electronic Devices,” filedJul. 24, 2006, the contents of which are hereby incorporated byreference in their entirety.

A quick press of the push button may disengage a lock of the touchscreen or begin a process that uses gestures on the touch screen tounlock the device, as described in U.S. patent application Ser. No.11/322,549 (US 2007-0150842 A1), “Unlocking a Device by PerformingGestures on an Unlock Image,” filed Dec. 23, 2005, which is herebyincorporated by reference in its entirety.

A touch-sensitive display in some embodiments of the touch screen may beanalogous to the multi-touch sensitive tablets described in thefollowing U.S. patents: U.S. Pat. No. 6,323,846 (Westerman et al.), U.S.Pat. No. 6,570,557 (Westerman et al.), and/or U.S. Pat. No. 6,677,932(Westerman), and/or U.S. Patent Publication 2002/0015024A1, each ofwhich is hereby incorporated by reference in its entirety.

A touch-sensitive display in some embodiments of the touch screen may beas described in the following applications: (1) U.S. patent applicationSer. No. 11/381,313 (US 2007-0257890 A1), “Multipoint Touch SurfaceController,” filed May 2, 2006; (2) U.S. patent application Ser. No.10/840,862 (US 2006-0097991 A1), “Multipoint Touchscreen,” filed May 6,2004; (3) U.S. patent application Ser. No. 10/903,964 (US 2006-0026521A1), “Gestures For Touch Sensitive Input Devices,” filed Jul. 30, 2004;(4) U.S. patent application Ser. No. 11/048,264 (US 2006-0026536 A1),“Gestures For Touch Sensitive Input Devices,” filed Jan. 31, 2005; (5)U.S. patent application Ser. No. 11/038,590 (US 2006-0026535 A1),“Mode-Based Graphical User Interfaces For Touch Sensitive InputDevices,” filed Jan. 18, 2005; (6) U.S. patent application Ser. No.11/228,758 (US 2006-0033724 A1), “Virtual Input Device Placement On ATouch Screen User Interface,” filed Sep. 16, 2005; (7) U.S. patentapplication Ser. No. 11/228,700 (US 2006-0053387 A1), “Operation Of AComputer With A Touch Screen Interface,” filed Sep. 16, 2005; (8) U.S.patent application Ser. No. 11/228,737 (US 2006-0085757 A1), “ActivatingVirtual Keys Of A Touch-Screen Virtual Keyboard,” filed Sep. 16, 2005;and (9) U.S. patent application Ser. No. 11/367,749 (US 2006-0197753A1), “Multi-Functional Hand-Held Device,” filed Mar. 3, 2006. All ofthese applications are incorporated by reference herein in theirentirety.

The proximity sensor may perform as described in U.S. patent applicationSer. No. 11/241,839 (US 2006-0161871 A1), “Proximity Detector InHandheld Device”; Ser. No. 11/240,788 (US 2006-0161870 A1), “ProximityDetector In Handheld Device”; Ser. No. 11/620,702 (US 2008-0167834 A1),“Using Ambient Light Sensor To Augment Proximity Sensor Output”; Ser.No. 11/586,862 (US 2007-0075965 A1), “Automated Response To And SensingOf User Activity In Portable Devices”; and Ser. No. 11/638,251 (US2008-0140868 A1), “Methods And Systems For Automatic Configuration OfPeripherals,” which are hereby incorporated by reference in theirentirety.

The accelerometer may perform as described in U.S. Patent PublicationNo. 20050190059, “Acceleration-based Theft Detection System for PortableElectronic Devices,” and U.S. Patent Publication No. 20060017692,“Methods And Apparatuses For Operating A Portable Device Based On AnAccelerometer,” both of which are which are incorporated by referenceherein in their entirety.

Additional description of the online video application can be found inU.S. Provisional Patent Application No. 60/936,562, “PortableMultifunction Device, Method, and Graphical User Interface for PlayingOnline Videos,” filed Jun. 20, 2007, and U.S. patent application Ser.No. 11/968,067 (US 2008-0320391 A1), “Portable Multifunction Device,Method, and Graphical User Interface for Playing Online Videos,” filedDec. 31, 2007, the content of which is hereby incorporated by referencein its entirety.

Processes that use gestures on the touch screen to unlock the device aredescribed in U.S. patent application Ser. No. 11/322,549 (US2007-0150842 A1), “Unlocking A Device By Performing Gestures On AnUnlock Image,” filed Dec. 23, 2005, and Ser. No. 11/322,550 (US2007-0150826 A1), “Indication Of Progress Towards Satisfaction Of A UserInput Condition,” filed Dec. 23, 2005, which are hereby incorporated byreference in their entirety.

In some embodiments, a user may rearrange the icons in UI, e.g., usingprocesses described in U.S. patent application Ser. No. 11/459,602 (US2007-0157089 A1), “Portable Electronic Device With InterfaceReconfiguration Mode,” filed Jul. 24, 2006, which is hereby incorporatedby reference in its entirety.

In some embodiments, UI includes a gauge (not shown) that displays anupdated account usage metric for an account associated with usage of thedevice (e.g., a cellular phone account), as described in U.S. patentapplication Ser. No. 11/322,552 (US 2007-0149252 A1), “AccountInformation Display For Portable Communication Device,” filed Dec. 23,2005, which is hereby incorporated by reference in its entirety.

Additional description of insertion marker positioning can be found inU.S. patent application Ser. No. 11/553,436 (US 2008-0259040 A1),“Method, System, And Graphical User Interface For Positioning AnInsertion Marker In A Touch Screen Display,” filed Oct. 26, 2006, andU.S. Provisional Patent Application No. 60/947,382, “PortableMultifunction Device, Method, and Graphical User Interface for Adjustingan Insertion Point Marker,” filed Jun. 29, 2007, and U.S. patentapplication Ser. No. 11/923,453 (US 2008-0165142 A1), “PortableMultifunction Device, Method, and Graphical User Interface for Adjustingan Insertion Point Marker,” filed Oct. 24, 2007, the contents of whichare hereby incorporated by reference herein in their entirety.

Additional description of instant messaging on portable electronicdevices can be found in U.S. Provisional Patent Application Nos.60/883,819, “Portable Electronic Device For Instant Messaging,” filedJan. 7, 2007, and 60/946,969, “Portable Electronic Device For InstantMessaging,” filed Jun. 28, 2007, and U.S. patent application Ser. No.11/848,208 (US 2008-0055269 A1), “Portable Electronic Device for InstantMessaging,” filed Aug. 30, 2007, the contents of which are herebyincorporated by reference in their entirety.

Additional description of deletion gestures on portable electronicdevices can be found in U.S. Provisional Patent Application Nos.60/883,814, “Deletion Gestures On A Portable Multifunction Device,”filed Jan. 7, 2007 and 60/936,755, “Deletion Gestures On A PortableMultifunction Device,” filed Jun. 22, 2007, and U.S. patent applicationSer. No. 11/850,642 (US 2008-0094371 A1), “Deletion Gestures on aPortable Multifunction Device,” filed Sep. 5, 2007, the contents ofwhich are hereby incorporated by reference in their entirety.

As described in U.S. patent application Ser. No. 11/322,547 (US2007-0150830 A1), “Scrolling List With Floating Adjacent Index Symbols,”filed Dec. 23, 2005; Ser. No. 11/322,551 (US 2007-0146337 A1),“Continuous Scrolling List With Acceleration,” filed Dec. 23, 2005; andSer. No. 11/322,553 (US 2007-0132789 A1), “List Scrolling In Response ToMoving Contact Over List Of Index Symbols,” filed Dec. 23, 2005, whichare hereby incorporated by reference in their entirety, the user mayscroll through the contact list using vertically upward and/orvertically downward gestures 814 on the touch screen.

Additional descriptions of word suggestion can be found in U.S. patentapplication Ser. No. 11/620,641 (US 2008-0167858 A1), “Method, System,And Graphical User Interface For Providing Word Recommendations for TextInput,” filed Jan. 5, 2007) and U.S. patent application Ser. No.11/620,642 (US 2008-0168366 A1), “Method, System, And Graphical UserInterface For Providing Word Recommendations,” filed Jan. 5, 2007, thecontents of which are hereby incorporated by reference in theirentirety.

Additional description of image management can be found in U.S.Provisional Patent Application Nos. 60/883,785, “Portable ElectronicDevice For Photo Management,” filed Jan. 6, 2007, and 60/947,118,“Portable Electronic Device For Photo Management,” filed Jun. 29, 2007,and U.S. patent application Ser. No. 11/848,210 (US 2008-0052945 A1),“Portable Electronic Device For Photo Management,” filed Aug. 30, 2007,the contents of which are hereby incorporated by reference in theirentirety.

Additional description of a video player and manager can be found inU.S. Provisional Patent Application Nos. 60/883,784, “Video Manager ForPortable Multifunction Device,” filed Jan. 6, 2007, and 60/946,973,“Video Manager For Portable Multifunction Device,” filed Jun. 28, 2007,and U.S. patent application Ser. No. 11/850,008 (US 2008-0055272 A1),“Video Manager For Portable Multifunction Device,” filed Sep. 4, 2007,the contents of which are hereby incorporated by reference in theirentirety.

Additional description of configuring and displaying widgets can befound in U.S. Provisional Patent Application No. 60/946,975, “PortableMultifunction Device, Method, and Graphical User Interface forConfiguring and Displaying Widgets,” filed Jun. 28, 2007, and U.S.patent application Ser. No. 11/850,010 (US 2008-0082930 A1), “PortableMultifunction Device, Method, and Graphical User Interface forConfiguring and Displaying Widgets,” filed Sep. 4, 2007, the content ofwhich is hereby incorporated by reference in its entirety.

As described in U.S. patent application Ser. No. 11/322,547 (US2007-0150830 A1), “Scrolling List With Floating Adjacent Index Symbols,”filed Dec. 23, 2005, which is hereby incorporated by reference in itsentirety, the user may scroll through the contact list using verticallyupward and/or vertically downward gestures 2602 on the touch screen.

Additional description of the reordering of user-configurable lists canbe found in U.S. Provisional Patent Application No. 60/883,808, “SystemAnd Method For Managing Lists,” filed Jan. 7, 2007, and U.S. patentapplication Ser. No. 11/770,725 (US 2008-0165136 A1), “System and Methodfor Managing Lists,” filed Jun. 28, 2007, the contents of which arehereby incorporated by reference in their entirety.

Additional description of missed call management can be found in U.S.Provisional Patent Application No. 60/883,782, “Telephone CallManagement For A Portable Multifunction Device,” filed Jan. 6, 2007, andU.S. patent application Ser. No. 11/769,694 (US 2008-0057926 A1),“Missed Telephone Call Management for a Portable Multifunction Device,”filed Jun. 27, 2007, the contents of which are hereby incorporated byreference in their entirety.

Additional description of location-based dialing can be found in U.S.Provisional Patent Application No. 60/883,800, “Method, Device, AndGraphical User Interface For Location-Based Dialing,” filed Jan. 7,2007, and U.S. patent application Ser. No. 11/769,692 (US 2008-0167083A1), “Method, Device, and Graphical User Interface for Location-BasedDialing,” filed Jun. 27, 2007, the contents of which are herebyincorporated by reference in their entirety.

Additional description of conference calling can be found in U.S.Provisional Patent Application No. 60/947,133, “Portable MultifunctionDevice, Method, and Graphical User Interface for Conference Calling,”filed Jun. 29, 2007, and U.S. patent application Ser. No. 11/960,673 (US2008-0168361 A1), “Portable Multifunction Device, Method, and GraphicalUser Interface for Conference Calling,” filed Dec. 19, 2007, the contentof which is hereby incorporated by reference in its entirety.

Additional description of application switching can be found in U.S.Provisional Patent Application No. 60/883,809, “Portable ElectronicDevice Supporting Application Switching,” filed Jan. 7, 2007, and U.S.patent application Ser. No. 11/969,908 (US 2008-0168379 A1), “PortableElectronic Device Supporting Application Switching,” filed Jan. 6, 2008,the content of which is hereby incorporated by reference in itsentirety.

Additional description of user interfaces for handling incoming callscan be found in U.S. Provisional Patent Application No. 60/883,783,“Incoming Telephone Call Management For A Portable MultifunctionDevice,” filed Jan. 6, 2007, and U.S. patent application Ser. No.11/769,695 (US 2008-0055263 A1), “Incoming Telephone Call Management ForA Portable Multifunction Device,” filed Jun. 27, 2007, the contents ofwhich are hereby incorporated by reference in their entirety.

Additional description of the voicemail system can be found in U.S.Provisional Patent Application No. 60/883,799, “Voicemail Manager ForPortable Multifunction Device,” filed Jan. 7, 2007; U.S. patentapplication Ser. No. 11/770,720 (US 2008-0055264 A1), “Voicemail Managerfor Portable Multifunction Device,” filed Jun. 28, 2007; and 60/947,348,“Voicemail Set-Up on a Portable Multifunction Device,” filed Jun. 29,2007; and U.S. patent application Ser. No. 11/961,716 (US 2008-0168353A1), “Voicemail Set-Up on a Portable Multifunction Device,” filed Dec.20, 2007, the contents of which are hereby incorporated by reference intheir entirety.

Edit icon that when activated (e.g., by a finger tap on the icon)initiates display of a user interface for deleting emails (e.g., asdescribed in U.S. Provisional Patent Application Nos. 60/883,814,“Deletion Gestures On A Portable Multifunction Device,” filed Jan. 7,2007, and 60/936,755, “Deletion Gestures On A Portable MultifunctionDevice,” filed Jun. 22, 2007, and U.S. patent application Ser. No.11/850,642 (US 2008-0094371 A1), “Deletion Gestures On A PortableMultifunction Device,” filed Sep. 5, 2007, the contents of which arehereby incorporated by reference in their entirety).

In some embodiments, in response to detecting a horizontal swipe gestureon a particular email message in a the list of emails messages, aprocess for deleting the particular email message is initiated (e.g., asdescribed in U.S. Provisional Patent Application Nos. 60/883,814,“Deletion Gestures On A Portable Multifunction Device,” filed Jan. 7,2007, and 60/936,755, “Deletion Gestures On A Portable MultifunctionDevice,” filed Jun. 22, 2007, and U.S. patent application Ser. No.11/850,642 (US 2008-0094371 A1), “Deletion Gestures On A PortableMultifunction Device,” filed Sep. 5, 2007, the contents of which arehereby incorporated by reference in their entirety).

Additional description of an email client can be found in U.S.Provisional Patent Application No. 60/883,807, “Email Client For APortable Multifunction Device,” filed Jan. 7, 2007, and U.S. patentapplication Ser. No. 11/850,630 (US 2008-0094369 A1), “Email Client ForA Portable Multifunction Device,” filed Sep. 5, 2007, the content ofwhich is hereby incorporated by reference in its entirety.

Methods for efficiently fetching email messages can be found in U.S.Provisional Patent Application No. 60/947,395, “Email Fetching Systemand Method in a Portable Electronic Device,” filed Jun. 29, 2007, andU.S. patent application Ser. No. 11/968,070 (US 2009-0006570 A1), “EmailFetching System and Method in a Portable Electronic Device,” filed Dec.31, 2007, the content of which is hereby incorporated by reference inits entirety.

Methods for automatically selecting email ports and email security canbe found in U.S. Provisional Patent Application No. 60/947,396, “PortDiscovery and Message Delivery in a Portable Electronic Device,” filedJun. 29, 2007, and U.S. patent application Ser. No. 11/968,076 (US2009-0006644 A1), “Port Discovery and Message Delivery in a PortableElectronic Device,” filed Dec. 31, 2007, the content of which is herebyincorporated by reference in its entirety.

Additional description of displaying structured electronic documents(e.g., web pages) can be found in U.S. Provisional Patent ApplicationNo. 60/946,715, “Portable Electronic Device, Method, and Graphical UserInterface for Displaying Structured Electronic Documents,” filed Jun.27, 2007, and U.S. patent application Ser. No. 11/850,013 (US2008-0094368 A1), “Portable Electronic Device, Method, and GraphicalUser Interface for Displaying Structured Electronic Documents,” filedSep. 4, 2007, the content of which is hereby incorporated by referencein its entirety.

Additional description of adding windows to an application can be foundin U.S. patent application Ser. No. 11/620,647 (US 2008-0168401 A1),“Method, System, And Graphical User Interface For Viewing MultipleApplication Windows,” filed Jan. 5, 2007, the content of which is herebyincorporated by reference in its entirety.

Additional description of displaying inline multimedia content can befound in U.S. Provisional Patent Application No. 60/947,155, “PortableElectronic Device, Method, and Graphical User Interface for DisplayingInline Multimedia Content,” filed Jun. 29, 2007, and U.S. patentapplication Ser. No. 11/961,773 (US 2008-0165148 A1), “PortableElectronic Device, Method, and Graphical User Interface for DisplayingInline Multimedia Content,” filed Dec. 20, 2007, the content of which ishereby incorporated by reference in its entirety.

Additional description of interacting with user input elements can befound in U.S. Provisional Patent Application No. 60/947,127, “PortableMultifunction Device, Method, and Graphical User Interface forInteracting with User Input Elements in Displayed Content,” filed Jun.29, 2007, and U.S. patent application Ser. No. 11/960,394 (US2008-0165143 A1), “Portable Multifunction Device, Method, and GraphicalUser Interface for Interacting with User Input Elements in DisplayedContent,” filed Dec. 19, 2007, the content of which is herebyincorporated by reference in its entirety.

Additional description of displaying and activating hyperlinks usinginterfaces can be found in U.S. patent application Ser. No. 11/620,644(US 2008-0165133 A1), “Method, System, And Graphical User Interface ForDisplaying Hyperlink Information,” filed Jan. 5, 2007, and in U.S.patent application Ser. No. 11/620,646 (US 2008-0259041 A1), “Method,System, And Graphical User Interface For Activating Hyperlinks,” filedJan. 5, 2007, the contents of which are hereby incorporated by referencein their entirety.

Additional description of translating displayed content can be found inU.S. Provisional Patent Application No. 60/946,976, “PortableMultifunction Device, Method, and Graphical User Interface forTranslating Displayed Content,” filed Jun. 28, 2007, and U.S. patentapplication Ser. No. 11/960,675 (US 2008-0168405 A1), “PortableMultifunction Device, Method, and Graphical User Interface forTranslating Displayed Content,” filed Dec. 19, 2007, the content ofwhich is hereby incorporated by reference in its entirety.

Additional description of “rubber band-like” scrolling and translationbehavior can be found in U.S. Provisional Patent Application Nos.60/883,801, “List Scrolling And Document Translation On A Touch-ScreenDisplay,” filed Jan. 7, 2007; 60/945,858, “List Scrolling and DocumentTranslation on a Touch-Screen Display,” filed Jun. 22, 2007, and60/946,971, “List Scrolling and Document Translation on a Touch-ScreenDisplay,” filed Jun. 28, 2007, and U.S. patent application Ser. No.11/956,969 (US 2008-0168404 A1), “List Scrolling and DocumentTranslation, Scaling, and Rotation on a Touch-Screen Display,” filedDec. 14, 2007, the contents of which are hereby incorporated byreference in their entirety.

Additional description of scrolling is described in U.S. patentapplication Ser. No. 11/322,547 (US 2007-0150830 A1), “Scrolling ListWith Floating Adjacent Index Symbols,” filed Dec. 23, 2005; Ser. No.11/322,551 (US 2007-0146337 A1), “Continuous Scrolling List WithAcceleration,” filed Dec. 23, 2005; and Ser. No. 11/322,553 (US2007-0132789 A1), “List Scrolling In Response To Moving Contact OverList Of Index Symbols,” filed Dec. 23, 2005, which are herebyincorporated by reference in their entirety.

Additional description of user interface object reconfiguration can befound in U.S. Provisional Patent Application No. 60/937,990, “PortableMultifunction Device, Method, and Graphical User Interface SupportingUser Navigations of Graphical Objects on a Touch Screen Display,” filedJun. 29, 2007, and U.S. patent application Ser. No. 11/969,809 (US2008-0165153 A1), “Portable Multifunction Device, Method, and GraphicalUser Interface Supporting User Navigations of Graphical Objects on aTouch Screen Display,” filed Jan. 4, 2008, the content of which ishereby incorporated by reference in its entirety.

U.S. Provisional Patent Application No. 60/936,562, “PortableMultifunction Device, Method, and Graphical User Interface for PlayingOnline Videos,” filed Jun. 20, 2007, and U.S. patent application Ser.No. 11/968,067 (US 2008-0320391 A1), “Portable Multifunction Device,Method, and Graphical User Interface for Playing Online Videos,” filedDec. 31, 2007, the content of which is hereby incorporated by referencein its entirety, describes a way that major online video contentcategories can be rearranged by a user to correspond to the user'spreferred (favorite) categories. The teachings in that application arealso applicable here to rearranging major music and/or video categories.

Cover flow mode and other image modes are described in U.S. ProvisionalPatent Application No. 60/843,832, “Techniques And Systems For BrowsingMedia Content,” filed Sep. 11, 2006; U.S. patent application Ser. No.11/519,460 (US 2008-0066016 A1), “Media Manager With IntegratedBrowsers,” filed Sep. 11, 2006; and U.S. Provisional Patent ApplicationNo. 60/878,746 “Electronic Device With Image Based Browsing,” filed Jan.5, 2007, which are hereby incorporated by reference in their entirety.

Additional description of mode changes based on device orientation canbe found in U.S. Provisional Patent Application No. 60/947,300, “ModalChange Based on Orientation of a Portable Multifunction Device,” filedJun. 29, 2007, and U.S. patent application Ser. No. 11/969,800 (US2008-0165152 A1), “Modal Change Based on Orientation of a PortableMultifunction Device,” filed Jan. 4, 2008, the content of which ishereby incorporated by reference in its entirety.

Additional description of portrait-landscape rotation heuristics can befound in U.S. Provisional Patent Application No. 60/947,132,“Portrait-Landscape Rotation Heuristics for a Portable MultifunctionDevice,” filed Jun. 29, 2007, and U.S. patent application Ser. No.11/960,671 (US 2008-0165144 A1), “Portrait-Landscape Rotation Heuristicsfor a Portable Multifunction Device,” filed Dec. 19, 2007, the contentof which is hereby incorporated by reference in its entirety.

Additional description of adaptive user interface displays can be foundin U.S. Provisional Patent Application No. 60/937,992, “PortableMultifunction Device, Method, and Graphical User Interface forDisplaying User Interface Objects Adaptively,” filed Jun. 29, 2007, andU.S. patent application Ser. No. 11/961,760 (US 2008-0165147 A1),“Portable Multifunction Device, Method, and Graphical User Interface forDisplaying User Interface Objects Adaptively,” filed Dec. 20, 2007, thecontent of which is hereby incorporated by reference in its entirety.

Additional description of artwork can be found in U.S. ProvisionalPatent Application No. 60/883,818, “Creating Digital Artwork Based OnContent File Metadata,” filed Jan. 7, 2007, and U.S. patent applicationSer. No. 11/960,674 (US 2008-0168365 A1), “Creating Digital ArtworkBased On Content File Metadata,” filed Dec. 19, 2007, the content ofwhich is hereby incorporated by reference in its entirety.

Additional description of positioning a slider icon can be found in U.S.Provisional Patent Application No. 60/947,304, “Positioning a SliderIcon on a Portable Multifunction Device,” filed Jun. 29, 2007, and U.S.patent application Ser. No. 11/968,064 (US 2008-0168395 A1),“Positioning a Slider Icon on a Portable Multifunction Device,” filedDec. 31, 2007, the content of which is hereby incorporated by referencein its entirety.

Additional description of word suggestion can be found in U.S. patentapplication Ser. No. 11/620,641 (US 2008-0167858 A1), “Method And SystemFor Providing Word Recommendations For Text Input,” filed Jan. 5, 2007,and U.S. patent application Ser. No. 11/620,642 (US 2008-0168366 A1),“Method, System, And Graphical User Interface For Providing WordRecommendations,” filed Jan. 5, 2007, the contents of which are herebyincorporated by reference in their entirety.

Additional description of calendars can be found in U.S. ProvisionalPatent Application No. 60/883,820, “System And Method For Viewing AndManaging Calendar Entries,” filed Jan. 7, 2007, and U.S. patentapplication Ser. No. 11/969,786 (US 2008-0165151 A1), “System and Methodfor Viewing And Managing Calendar Entries,” filed Jan. 4, 2008, thecontent of which is hereby incorporated by reference in its entirety.

Additional description of inputting date and time information can befound in U.S. Provisional Patent Application No. 60/947,146, “System,Method, and Graphical User Interface for Inputting Date and TimeInformation on a Portable Multifunction Device,” filed Jun. 29, 2007,and U.S. patent application Ser. No. 11/968,051 (US 2008-0165149 A1),“System, Method, and Graphical User Interface for Inputting Date andTime Information on a Portable Multifunction Device,” filed Dec. 31,2007, the content of which is hereby incorporated by reference in itsentirety.

Additional description of user created widgets can be found in U.S.Provisional Patent Application Nos. 60/883,805, “Web Clip Widgets On APortable Multifunction Device,” filed Jan. 7, 2007, and 60/946,712, “WebClip Widgets on a Portable Multifunction Device,” filed Jun. 27, 2007,and U.S. patent application Ser. No. 11/850,011 (US 2008-0055273 A1),“Web Clip Widgets On a Portable Multifunction Device,” filed Sep. 4,2007, the contents of which are hereby incorporated by reference intheir entirety.

Additional description of providing maps and directions can be found inU.S. Provisional Patent Application No. 60/936,725, “PortableMultifunction Device, Method, and Graphical User Interface for ProvidingMaps and Directions,” filed Jun. 22, 2007, and U.S. patent applicationSer. No. 11/969,211 (US 2008-0168396 A1), “Portable MultifunctionDevice, Method, and Graphical User Interface for Providing Maps andDirections,” filed Jan. 3, 2008, the content of which is herebyincorporated by reference in its entirety.

Additional description of displaying notification information for missedcommunications can be found in U.S. Provisional Patent Application No.60/883,804, “System And Method For Displaying CommunicationNotifications,” filed Jan. 7, 2007 and U.S. patent application Ser. No.11/770,718 (US 2008-0220752 A1), “Portable Multifunction Device, Method,and Graphical User Interface for Managing Communications Received Whilein a Locked State,” filed Jun. 28, 2007, the contents of which arehereby incorporated by reference in their entirety.

Additional description of methods for silencing a portable device can befound in U.S. Provisional Patent Application No. 60/883,802, “PortableElectronic Device With Alert Silencing,” filed Jan. 7, 2007 and U.S.patent application Ser. No. 11/770,727 (US 2008-0165022 A1), “PortableElectronic Device with Alert Silencing,” filed Jun. 28, 2007, thecontents of which are hereby incorporated by reference in theirentirety.

Additional description of methods for turning off a portable device canbe found in U.S. Provisional Patent Application No. 60/883,786,“Power-Off Methods For Portable Electronic Devices,” filed Jan. 6, 2007,and U.S. patent application Ser. No. 11/770,722 (US 2008-0168290 A1),“Power-Off Methods For Portable Electronic Devices,” filed Jun. 28,2007, the contents of which are hereby incorporated by reference intheir entirety.

Additional description of determining a cursor position from a fingercontact can be found in U.S. Provisional Patent Application No.60/946,716, “Methods for Determining a Cursor Position from a FingerContact with a Touch Screen Display,” filed Jun. 27, 2007, and U.S.patent application Ser. No. 11/850,015 (US 2008-0094356 A1), “Methodsfor Determining a Cursor Position from a Finger Contact with a TouchScreen Display,” filed Sep. 4, 2007, the content of which is herebyincorporated by reference in its entirety.

Additional description of the horizontal and vertical bars can be foundin U.S. Provisional Patent Application No. 60/947,386, “PortableElectronic Device, Method, and Graphical User Interface for DisplayingElectronic Documents and Lists,” filed Jun. 29, 2007, and U.S. patentapplication Ser. No. 11/968,059 (US 2008-0168349 A1), “PortableElectronic Device, Method, and Graphical User Interface for DisplayingElectronic Documents and Lists,” filed Dec. 31, 2007, the content ofwhich is hereby incorporated by reference in its entirety.

Additional description of gestures can be found in U.S. ProvisionalPatent Application Nos. 60/883,817, “Portable Electronic DevicePerforming Similar Operations For Different Gestures,” filed Jan. 7,2007, and 60/946,970, “Screen Rotation Gestures on a PortableMultifunction Device,” filed Jun. 28, 2007, and U.S. patent applicationSer. No. 11/850,638 (US 2008-0094370 A1), “Portable Electronic DevicePerforming Similar Operations For Different Gestures,” filed Sep. 5,2007, and Ser. No. 11/960,667 (US 2008-0211778 A1), “Screen RotationGestures on a Portable Multifunction Device,” filed Dec. 19, 2007, thecontents of which are hereby incorporated by reference in theirentirety.

Additional description of interpreting a finger gesture can be found inU.S. Provisional Patent Application No. 60/946,977, “PortableMultifunction Device, Method, and Graphical User Interface forInterpreting a Finger Gesture on a Touch Screen Display,” filed Jun. 28,2007, and U.S. patent application Ser. No. 11/969,796 (US 2008-0165160A1), “Portable Multifunction Device, Method, and Graphical UserInterface for Interpreting a Finger Gesture on a Touch Screen Display,”filed Jan. 4, 2008, the content of which is hereby incorporated byreference in its entirety.

Additional description of interpreting a finger swipe gesture can befound in U.S. Provisional Patent Application No. 60/947,140, “PortableMultifunction Device, Method, and Graphical User Interface forInterpreting a Finger Swipe Gesture,” filed Jun. 29, 2007, and U.S.patent application Ser. No. 11/961,700 (US 2008-0165145 A1), “PortableMultifunction Device, Method, and Graphical User Interface forInterpreting a Finger Swipe Gesture,” filed Dec. 20, 2007, the contentof which is hereby incorporated by reference in its entirety.

Additional description of heuristics can be found in U.S. ProvisionalPatent Application No. 60/937,991, “Touch Screen Device, Method, andGraphical User Interface for Determining Commands by ApplyingHeuristics,” filed Jun. 29, 2007, and U.S. patent application Ser. No.11/850,635 (US 2008-0122796 A1), “Touch Screen Device, Method, andGraphical User Interface for Determining Commands by ApplyingHeuristics,” filed Sep. 5, 2007, the content of which is herebyincorporated by reference in its entirety.

Additional description of soft keyboards can be found in U.S.Provisional Patent Application No. 60/946,714, “Portable MultifunctionDevice with Soft Keyboards,” filed Jun. 27, 2007, and U.S. patentapplication Ser. No. 11/961,663 (US 2008-0098331 A1), “PortableMultifunction Device with Soft Keyboards,” filed Dec. 20, 2007, thecontent of which is hereby incorporated by reference in its entirety.

Additional description of keyboards can be found in U.S. ProvisionalPatent Application No. 60/883,806, “Soft Keyboard Display For A PortableMultifunction Device,” filed Jan. 7, 2007, and U.S. patent applicationSer. No. 11/850,641 (US 2008-0082934 A1), “Soft Keyboard Display For APortable Multifunction Device,” filed Sep. 5, 2007, the content of whichis hereby incorporated by reference in its entirety.

Additional description of airplane mode indicators can be found in U.S.Provisional Patent Application No. 60/947,315, “Airplane Mode Indicatoron a Portable Multifunction Device,” filed Jun. 29, 2007, and U.S.patent application Ser. No. 11/961,743 (US 2008-0165146 A1), “AirplaneMode Indicator on a Portable Multifunction Device,” filed Dec. 20, 2007,the content of which is hereby incorporated by reference in itsentirety.

Additional description of dimming techniques can be found in U.S.Provisional Patent Application No. 60/883,821, “Portable ElectronicDevice With Auto-Dim Timers,” filed Jan. 7, 2007, and U.S. patentapplication Ser. No. 11/960,677 (US 2008-0218535 A1), “PortableElectronic Device With Auto-Dim Timers,” filed Dec. 19, 2007, thecontent of which is hereby incorporated by reference in its entirety.

Additional description of settings-related techniques can be found inU.S. Provisional Patent Application No. 60/883,812, “Portable ElectronicDevice With A Global Setting User Interface,” filed Jan. 7, 2007, andU.S. patent application Ser. No. 11/960,669 (US 2008-0222545 A1),“Portable Electronic Device With A Global Setting User Interface,” filedDec. 19, 2007, the content of which is hereby incorporated by referencein its entirety.

In accordance with various embodiments, a toolbox window is contemplatedto have the functionality similar to that set forth in U.S. Pat. No.7,600,193 to Gunderson entitled “A METHOD OF TRACKING DUAL MODE DATAOBJECTS USING RELATED THUMBNAILS AND TOOL ICONS IN A PALETTE WINDOW,”the disclosure of which is wholly incorporated by reference herein.

U.S. Patent Application titled “Video Conferencing System Transcoder”,Ser. No. 11/252,238 (US 2006-0087553 A1), which was filed Oct. 17, 2005,whose inventors are Michael L. Kenoyer and Michael V. Jenkins, is herebyincorporated by reference in its entirety as though fully and completelyset forth herein.

Similarly, the conference may be a videoconference, and thevideoconference may be established according to any of a variety ofmethods, e.g., the one described in patent application Ser. No.11/252,238 (US 2006-0087553 A1), which was incorporated by referenceabove.

A proximity sensor may perform as described in U.S. patent applicationSer. No. 11/241,839 (US 2006-0161871 A1), “Proximity Detector InHandheld Device,” filed Sep. 30, 2005; Ser. No. 11/240,788 (US2006-0161870 A1), “Proximity Detector In Handheld Device,” filed Sep.30, 2005; Ser. No. 11/620,702 (US 2008-0167834 A1), “Using Ambient LightSensor To Augment Proximity Sensor Output”; Ser. No. 11/586,862 (US2007-0075965 A1), “Automated Response To And Sensing Of User Activity InPortable Devices,” filed Oct. 24, 2006; and Ser. No. 11/638,251 (US2008-0140868 A1), “Methods And Systems For Automatic Configuration OfPeripherals,” which are hereby incorporated by reference in theirentirety.

In some embodiments, a user may rearrange the icons in UI, e.g., usingprocesses described in U.S. patent application Ser. No. 11/459,602 (US2007-0157089 A1), “Portable Electronic Device With InterfaceReconfiguration Mode,” filed Jul. 24, 2006, which is hereby incorporatedby reference in its entirety. For example, a user may move applicationicons in and out of tray 408 using finger gestures.

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, and notlimitation. Thus, the breadth and scope of a preferred embodiment shouldnot be limited by any of the above-described exemplary embodiments, butshould be defined only in accordance with the following claims and theirequivalents.

What is claimed is:
 1. A method, comprising: at an apparatus includingat least one non-transitory memory storing a plurality of applications,a touch screen, and one or more processors in communication with the atleast one non-transitory memory and the touch screen: displaying atextual word in a virtual display layer; detecting a gesture via thetouch screen on the textual word; detecting a first touch state; inresponse to the detection of the first touch state, performing a firstfunction in connection with the textual word, the first functionincluding selecting the textual word; detecting a second touch state;and in response to the detection of the second touch state, performing asecond function in connection with movement of the selected textualword, the second function including displaying the selected textual wordin a plurality of virtual display layers including the virtual displaylayer and a separate virtual display layer, such that at least one ofthe plurality of virtual display layers is at least partiallytranslucent.
 2. The method of claim 1, wherein the selected textual wordis displayed to include a bounding shape surrounding the selectedtextual word.
 3. The method of claim 1, wherein the first function isperformed in response to detection of a cessation of the gesture.
 4. Themethod of claim 1, wherein the first function is performed while thegesture is being detected.
 5. The method of claim 1, wherein the firstfunction is conditionally performed, based on detection of a cessationof the gesture without a duration of the gesture surpassing apredetermined duration threshold.
 6. The method of claim 1, wherein thegesture includes a double tap gesture, and the first function furtherincludes shading the selected textual word.
 7. The method of claim 1,wherein the gesture includes a drag gesture.
 8. The method of claim 1,wherein the second function is performed in response to detection of aseparate gesture on the textual word.
 9. The method of claim 1, whereinthe second function is performed based on detection of a separategesture on the textual word subsequent to a lift off event beingdetected for the gesture.
 10. The method of claim 1, wherein the secondfunction is conditionally performed, based on detection of a separategesture on the textual word having a duration surpassing a predeterminedduration threshold.
 11. The method of claim 10, wherein a visual aspectof the selected textual word in the virtual display layer is changed,based on detection of the separate gesture having the durationsurpassing the predetermined duration threshold.
 12. The method of claim10, wherein the separate gesture includes a press gesture.
 13. Themethod of claim 10, wherein the separate gesture includes a pressgesture component and a subsequent drag gesture component that are bothpart of the same single continuous gesture.
 14. The method of claim 10,wherein the display of the selected textual word in the plurality ofvirtual display layers, continues while the separate gesture continuesto be detected.
 15. The method of claim 10, wherein the display of theselected textual word in the separate virtual display layer, continuesonly while the separate gesture continues to be detected.
 16. The methodof claim 10, wherein the display of the selected textual word in theplurality of virtual display layers, continues until detection of acessation of the separate gesture, in response to which the selectedtextual word in the separate virtual display layer is no longerdisplayed.
 17. The method of claim 10, wherein the display of theselected textual word in the plurality of virtual display layers,continues until detection of a cessation of the separate gesture, inresponse to which the separate virtual display layer and the selectedtextual word therein are no longer displayed.
 18. The method of claim10, wherein the display of the selected textual word in the plurality ofvirtual display layers, continues until detection of a cessation of theseparate gesture, in response to which the selected textual word in theseparate virtual display layer is no longer displayed, and the selectedtextual word is pasted at a different location in the virtual displaylayer.
 19. The method of claim 10, wherein the display of the selectedtextual word in the separate virtual display layer continues untildetection of a cessation of the separate gesture, in response to which:the selected textual word in the separate virtual display layer is nolonger displayed, the selected textual word is no longer displayed at anoriginal location in the virtual display layer, and the selected textualword is displayed at a different location in the virtual display layer.20. The method of claim 10, wherein the display of the selected textualword in the separate virtual display layer continues until detection ofa cessation of the separate gesture, wherein the selected textual wordis no longer displayed at an original location in the virtual displaylayer, and the selected textual word is displayed at a differentlocation in the virtual display layer.
 21. The method of claim 10,wherein the display of the selected textual word in the separate virtualdisplay layer continues until detection of a cessation of the separategesture, in response to which: the selected textual word is removed fromthe separate virtual display layer, the selected textual word is cutfrom an original location in the virtual display layer, and the selectedtextual word is pasted at a different location in the virtual displaylayer.
 22. The method of claim 1, wherein, in the second touch state,the selected textual word in the separate virtual display layer is movedin response to detection of a separate gesture including movement. 23.The method of claim 1, wherein at least one of the plurality of virtualdisplay layers is at least partially translucent to facilitateidentifying an insertion point for the selected textual word.
 24. Themethod of claim 1, wherein the virtual display layer is at leastpartially translucent.
 25. The method of claim 1, wherein the separatevirtual display layer is at least partially translucent.
 26. The methodof claim 1, wherein at least one of the plurality of virtual displaylayers is at least partially translucent, by an entirety thereofexcluding the selected textual word, being at least partiallytranslucent.
 27. The method of claim 1, wherein an entirety of abounding box, excluding the selected textual word therein, in at leastone of the plurality of virtual display layers is at least partiallytranslucent.
 28. The method of claim 1, wherein the selected textualword displayed in at least one of the plurality of virtual displaylayers is not translucent.
 29. The method of claim 1, wherein, in thesecond touch state, at least one aspect of the selected textual worddisplayed in the virtual display layer is altered.
 30. The method ofclaim 1, wherein, in the second touch state, the selected textual worddisplayed in the virtual display layer is faded.
 31. The method of claim1, wherein the separate virtual display layer is not displayed inconnection with the first touch state.
 32. The method of claim 1,wherein the separate virtual display layer is not displayed outside thesecond touch state.
 33. The method of claim 1, wherein the selectedtextual word is displayed in the plurality of virtual display layers, bythe selected textual word being copied to the separate virtual displaylayer.
 34. The method of claim 1, wherein the second function isperformed prior to the movement of the selected textual word.
 35. Themethod of claim 1, wherein the second function is performed inconnection with the movement of the selected textual word.
 36. Themethod of claim 1, wherein, in a third touch state, a third function isperformed including the movement of the selected textual word.
 37. Themethod of claim 1, wherein: the second function is conditionallyperformed, based on detection of a separate gesture on the textual wordthat is detected separate from the gesture; the display of the selectedtextual word in the separate virtual display layer, continues only whilethe separate gesture continues to be detected; in response to detectionof a cessation of the separate gesture, the separate virtual displaylayer and the selected textual word therein are no longer displayed; andthe selected textual word is cut from an original location in thevirtual display layer and pasted at a different location in the virtualdisplay layer.
 38. The method of claim 37, wherein the selected textualword is cut from the original location in the virtual display layer, inresponse to detection of the cessation of the separate gesture.
 39. Themethod of claim 37, wherein the selected textual word is pasted at thedifferent location in the virtual display layer, in response todetection of the cessation of the separate gesture.
 40. The method ofclaim 37, wherein the second function is conditionally performed, basedon detection of the separate gesture that has a duration surpassing apredetermined duration threshold.
 41. The method of claim 37, whereinthe apparatus is conditionally vibrated, based on detection of theseparate gesture.
 42. The method of claim 37, wherein the secondfunction is performed prior to the movement of the selected textualword.
 43. The method of claim 37, wherein the second function isperformed in connection with the movement of the selected textual word.44. The method of claim 37, wherein, in a third touch state, a thirdfunction is performed including the movement of the selected textualword.
 45. The method of claim 37, wherein at least one of: the movementincludes relocation; the movement includes pasting the selected word;the movement does not include pasting the selected word; the selectedtextual word includes a single textual word; the selected textual wordincludes multiple textual words; the touch screen and the memory aredirectly coupled to the one or more processors; the touch screen and thememory are indirectly coupled to the one or more processors; the touchscreen and the memory are in communication with the one or moreprocessors with at least one intermediate component therebetween; the atleast one non-transitory memory is in communication with the one or moreprocessors without the plurality of applications being in communicationwith the one or more processors; each instance of the displaying, thedetecting, and the performing are acts; each instance of the displaying,the detecting, and the performing are not steps; the selected textualword is displayed both in the virtual display layer and in the separatevirtual display layer, by being displayed identically in the virtualdisplay layer and in the separate virtual display layer; the selectedtextual word is displayed both in the virtual display layer and in theseparate virtual display layer, by being displayed differently in thevirtual display layer and in the separate virtual display layer; theselected textual word is displayed both in the virtual display layer andin the separate virtual display layer, by being displayed with differentformatting in the virtual display layer and in the separate virtualdisplay layer; the selected textual word is displayed both in thevirtual display layer and in the separate virtual display layer, bybeing displayed with different information in the virtual display layerand in the separate virtual display layer; the selected textual word isdisplayed both in the virtual display layer and in the separate virtualdisplay layer, by the selected textual word being copied to the separatevirtual display layer; the textual word is displayed in a single virtualdisplay layer when displayed in the virtual display layer; the separatevirtual display layer is displayed before the selected textual word isdisplayed in the separate virtual display layer; the gesture and theseparate gesture are detected on the textual word by being detected at asame point on the textual word; the gesture and the separate gesture aredetected on the textual word by being detected at different points onthe textual word; the gesture and the separate gesture are detected onthe textual word by being detected at different points within apredetermined distance of the textual word; the at least one of thevirtual display layer or the separate virtual display layer is at leastpartially translucent for providing an appearance of the selectedtextual word pushing through at least one of the virtual display layeror the separate virtual display layer; the virtual display layer isabove the separate virtual display layer; the virtual display layer isbelow the separate virtual display layer; the plurality of virtualdisplay layers differ in size; the plurality of virtual display layersare offset; the second touch state occurs in response to detection of aseparate gesture that occurs after a lift off event is detected for thegesture; the textual word is the only object in the separate virtualdisplay layer; the second touch state occurs in response to detection ofa separate gesture; a degree of the translucency is a function of userinput; a degree of the translucency is not a function of user input; thesecond function is performed during an entirety of the second touchstate; the second function is performed during at least a portion of thesecond touch state; the second function is performed in response to adetection of the second touch state; the touch screen is pressuresensitive; the touch screen is not pressure sensitive; at least one ofthe plurality of virtual display layers is at least partiallytranslucent by being at least partially transparent; the separatevirtual display layer is at least partially translucent, by at a leastportion of the separate virtual display layer being translucent; theseparate virtual display layer is at least partially translucent, by anentirety of the separate virtual display layer being translucent; theseparate virtual display layer is at least partially translucent, by anentirety of the separate virtual display layer, including the textualword, being at least partially translucent; the separate virtual displaylayer is at least partially translucent, by an entirety of the separatevirtual display layer, excluding the textual word, being at leastpartially translucent; the virtual display layer is at least partiallytranslucent, by at a least portion of the virtual display layer beingtranslucent; the virtual display layer is at least partiallytranslucent, by an entirety of the virtual display layer beingtranslucent; the virtual display layer is at least partiallytranslucent, by an entirety of the virtual display layer, including thetextual word, being at least partially translucent; or the virtualdisplay layer is at least partially translucent, by an entirety of thevirtual display layer, excluding the textual word, being at leastpartially translucent.
 46. The method of claim 1, wherein: the secondfunction is conditionally performed, based on detection of a separategesture on the textual word that is detected after the gesture; thedisplay of the selected textual word in the separate virtual displaylayer, continues only while the separate gesture continues to bedetected; in response to detection of a cessation of the separategesture, the separate virtual display layer is no longer displayed; andthe selected textual word is cut from an original location in thevirtual display layer and pasted at a different location in the virtualdisplay layer.
 47. The method of claim 46, wherein the selected textualword is cut from the original location in the virtual display layer, inresponse to detection of the cessation of the separate gesture.
 48. Themethod of claim 46, wherein the selected textual word is pasted at thedifferent location in the virtual display layer, in response todetection of the cessation of the separate gesture.
 49. The method ofclaim 46, wherein the second function is conditionally performed, basedon detection of the separate gesture that has a duration surpassing apredetermined duration threshold.
 50. The method of claim 46, whereinthe selected textual word is faded, in response to detection of theseparate gesture.
 51. The method of claim 46, wherein the secondfunction is performed prior to the movement of the selected textualword.
 52. The method of claim 46, wherein the second function isperformed in connection with the movement of the selected textual word.53. The method of claim 46, wherein, in response to movement in theseparate gesture, the selected textual word is moved.
 54. A method,comprising: at an apparatus including at least one non-transitory memorystoring a plurality of applications including a particular application,a touch screen, an actuator, and one or more processors in communicationwith the at least one non-transitory memory, the touch screen, and theactuator: displaying on the touch screen an application-specific iconassociated with the particular application via a home screen, the homescreen for choosing among the plurality of applications; based on afirst duration of touch applied to the touch screen on theapplication-specific icon and a subsequent cessation of the firstduration of touch applied to the touch screen on theapplication-specific icon being detected: launching the particularapplication; based on a second duration of touch, that is greater thanthe first duration, applied to the touch screen on theapplication-specific icon being detected: outputting feedback that isperceptible to touch utilizing the actuator and causing display of atleast one option on the touch screen; based on a touch applied to thetouch screen on the at least one option being detected, performing atleast one action corresponding to the at least one option; and blurringat least a portion of the home screen in relation to the detection ofthe second duration of touch; wherein at least one of: the particularapplication includes a navigation application; the application-specificicon includes a navigation application icon; based on the first durationof touch applied to the touch screen on the navigation application iconand the subsequent cessation of the first duration of touch applied tothe touch screen on the navigation application icon being detected, thenavigation application is launched; and based on the second duration oftouch applied to the touch screen on the navigation application iconbeing detected, the displayed at least one option includes an option foraccess to navigation information utilizing the navigation application;the particular application includes a browser application; theapplication-specific icon includes a browser application icon; based onthe first duration of touch applied to the touch screen on the browserapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the browser application icon beingdetected, the browser application is launched; and based on the secondduration of touch applied to the touch screen on the browser applicationicon being detected, the displayed at least one option includes anoption for access to bookmarks utilizing the browser application; theparticular application includes a media application; theapplication-specific icon includes a media application icon; based onthe first duration of touch applied to the touch screen on the mediaapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the media application icon beingdetected, the media application is launched; and based on the secondduration of touch applied to the touch screen on the media applicationicon being detected, the displayed at least one option includes anoption for selecting at least one track to be played utilizing the mediaapplication; the particular application includes a communicationapplication; the application-specific icon includes a communicationapplication icon; based on the first duration of touch applied to thetouch screen on the communication application icon and the subsequentcessation of the first duration of touch applied to the touch screen onthe communication application icon being detected, the communicationapplication is launched; and based on the second duration of touchapplied to the touch screen on the communication application icon beingdetected, the displayed at least one option includes an option foraccess to one or more communication techniques for a contact; theparticular application includes a calendar application; theapplication-specific icon includes a calendar application icon; based onthe first duration of touch applied to the touch screen on the calendarapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the calendar application icon beingdetected, the calendar application is launched; and based on the secondduration of touch applied to the touch screen on the calendarapplication icon being detected, the displayed at least one optionincludes an option for creating an appointment utilizing the calendarapplication; the particular application includes a camera application;the application-specific icon includes a camera application icon; basedon the first duration of touch applied to the touch screen on the cameraapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the camera application icon beingdetected, the camera application is launched; and based on the secondduration of touch applied to the touch screen on the camera applicationicon being detected, the displayed at least one option includes anoption for setting a camera setting; or the particular applicationincludes a phone application; the application-specific icon includes aphone application icon; based on the first duration of touch applied tothe touch screen on the phone application icon and the subsequentcessation of the first duration of touch applied to the touch screen onthe phone application icon being detected, the phone application islaunched; and based on the second duration of touch applied to the touchscreen on the phone application icon being detected, the displayed atleast one option includes an option for accessing at least one of avoicemail or a favorite, utilizing the phone application.
 55. The methodof claim 54, wherein the at least one option is displayed, withoutnecessitating prior launch of the particular application where the priorlaunch of the particular application is performed based on the firstduration of touch applied to the touch screen on theapplication-specific icon and the subsequent cessation of the firstduration of touch applied to the touch screen on theapplication-specific icon being detected.
 56. The method of claim 54,wherein the particular application includes the navigation application,and the navigation information includes an estimated time of arrival.57. The method of claim 54, wherein the particular application includesthe browser application.
 58. The method of claim 54, wherein thedisplayed at least one option further includes an option for opening anew tab utilizing the browser application.
 59. The method of claim 54,wherein the particular application includes the media application. 60.The method of claim 54, wherein the particular application includes thecommunication application.
 61. The method of claim 60, wherein thedisplayed at least one option further includes an option for creating anew message utilizing the communication application.
 62. The method ofclaim 60, wherein the communication application includes an instantmessage application, and the one or more communication techniques forthe contact, include an instant message service.
 63. The method of claim60, wherein the communication application includes a contactsapplication, and the one or more communication techniques for thecontact, include a phone service.
 64. The method of claim 54, whereinthe at least portion of the home screen is blurred in relation to thedetection of the second duration of touch, by being blurred in responseto the detection of the second duration of touch.
 65. The method ofclaim 54, wherein the particular application includes the calendarapplication.
 66. The method of claim 54, wherein the particularapplication includes the camera application.
 67. The method of claim 66,wherein the displayed at least one option, in response to a detection ofa selection thereof, results in the camera application being launched ina manner that reflects the camera setting.
 68. The method of claim 54,wherein the particular application includes the phone application. 69.The method of claim 68, wherein the displayed at least one optionincludes an option for accessing the voicemail utilizing the phoneapplication.
 70. The method of claim 68, wherein the displayed at leastone option includes a first option for accessing the voicemail utilizingthe phone application, and a second option for accessing the favoriteutilizing the phone application.
 71. The method of claim 54, wherein theat least portion of the home screen is blurred, in response to thesecond duration of touch applied to the touch screen on theapplication-specific icon being detected, for making the at leastportion of the home screen appear to be at a greater depth as comparedto the at least one option.
 72. The method of claim 54, wherein the atleast one option is part of a menu that is displayed in a differentvirtual display layer in relation to the at least portion of the homescreen.
 73. The method of claim 72, wherein the virtual display layer isalso different in relation to the application-specific icon.
 74. Themethod of claim 72, wherein the menu is staggered.
 75. A method,comprising: at an apparatus including at least one non-transitory memorystoring a plurality of applications, a touch screen, an actuator, andone or more processors in communication with the at least onenon-transitory memory, the touch screen, and the actuator: without anavigation application being launched, displaying, on the touch screen,a navigation application-specific icon associated with the navigationapplication via a home screen, the home screen for choosing among theplurality of applications; detecting a first gesture that is applied tothe touch screen on the navigation application-specific icon and that iscapable of causing a plurality of touch states in connection with thenavigation application-specific icon; in response to detection of acessation of a first touch state of the plurality of touch states causedby the detection of the first gesture on the navigationapplication-specific icon, launching the navigation application; basedon at least a portion of the detection of the first gesture, blurring atleast a portion of the home screen other than a menu associated with thenavigation application-specific icon, for providing a firstgesture-touch duration feedback in connection with the navigationapplication-specific icon; in response to detection of a second touchstate of the plurality of touch states caused by the detection of thefirst gesture on the navigation application-specific icon, permittingaccess to navigation information utilizing the menu associated with thenavigation application-specific icon; without a browser applicationbeing launched, displaying, on the touch screen, a browserapplication-specific icon associated with the browser application viathe home screen; detecting a second gesture that is applied to the touchscreen on the browser application-specific icon and that is capable ofcausing the plurality of touch states in connection with the browserapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the second gesture on the browser application-specificicon, launching the browser application; based on at least a portion ofthe detection of the second gesture, blurring at least a portion of thehome screen other than a menu associated with the browserapplication-specific icon, for providing a second gesture-touch durationfeedback in connection with the browser application-specific icon; inresponse to detection of the second touch state of the plurality oftouch states caused by the detection of the second gesture on thebrowser application-specific icon, permitting access to bookmarksutilizing the menu associated with the browser application-specificicon; without a media application being launched, displaying, on thetouch screen, a media application-specific icon associated with themedia application via the home screen; detecting a third gesture that isapplied to the touch screen on the media application-specific icon andthat is capable of causing the plurality of touch states in connectionwith the media application-specific icon; in response to detection of acessation of the first touch state of the plurality of touch statescaused by the detection of the third gesture on the mediaapplication-specific icon, launching the media application; based on atleast a portion of the detection of the third gesture, blurring at leasta portion of the home screen other than a menu associated with the mediaapplication-specific icon, for providing a third gesture-touch durationfeedback in connection with the media application-specific icon; inresponse to detection of the second touch state of the plurality oftouch states caused by the detection of the third gesture on the mediaapplication-specific icon, permitting access to at least one trackutilizing the menu associated with the media application-specific icon;without a communication application being launched, displaying, on thetouch screen, a communication application-specific icon associated withthe communication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, launching the communication application;based on at least a portion of the detection of the fourth gesture,blurring at least a portion of the home screen other than a menuassociated with the communication application-specific icon, forproviding a fourth gesture-touch touch duration feedback in connectionwith the communication application-specific icon; in response todetection of the second touch state of the plurality of touch statescaused by the detection of the fourth gesture on the communicationapplication-specific icon, permitting access to one or morecommunication techniques for a contact; without a calendar applicationbeing launched, displaying, on the touch screen, a calendarapplication-specific icon associated with the calendar application viathe home screen; detecting a fifth gesture that is applied to the touchscreen on the calendar application-specific icon and that is capable ofcausing the plurality of touch states in connection with the calendarapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fifth gesture on the calendar application-specificicon, launching the calendar application; based on at least a portion ofthe detection of the fifth gesture, blurring at least a portion of thehome screen other than a menu associated with the calendarapplication-specific icon, for providing a fifth gesture-touch durationfeedback in connection with the calendar application-specific icon; inresponse to detection of the second touch state of the plurality oftouch states caused by the detection of the fifth gesture on thecalendar application-specific icon, permitting creation of anappointment utilizing the menu associated with the calendarapplication-specific icon; without a camera application being launched,displaying, on the touch screen, a camera application-specific iconassociated with the camera application via the home screen; detecting asixth gesture that is applied to the touch screen on the cameraapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the camera application-specific icon;in response to detection of a cessation of the first touch state of theplurality of touch states caused by the detection of the sixth gestureon the camera application-specific icon, launching the cameraapplication; based on at least a portion of the detection of the sixthgesture, blurring at least a portion of the home screen other than amenu associated with the camera application-specific icon, for providinga sixth gesture-touch duration feedback in connection with the cameraapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesixth gesture on the camera application-specific icon, permittingsetting of a camera setting utilizing the menu associated with thecamera application-specific icon; without a phone application beinglaunched, displaying, on the touch screen, a phone application-specificicon associated with the phone application via the home screen;detecting a seventh gesture that is applied to the touch screen on thephone application-specific icon and that is capable of causing theplurality of touch states in connection with the phoneapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the seventh gesture on the phone application-specific icon,launching the phone application; and based on at least a portion of thedetection of the seventh gesture, blurring at least a portion of thehome screen other than a menu associated with the phoneapplication-specific icon, for providing a seventh gesture-touchduration feedback in connection with the phone application-specificicon; and in response to detection of the second touch state of theplurality of touch states caused by the detection of the seventh gestureon the phone application-specific icon, permitting access to at leastone of a voicemail or a favorite utilizing the menu associated with thephone application-specific icon.
 76. The method of claim 75, wherein:for each of the first, the second, the third, the fourth, the fifth, thesixth, and the seventh gestures, the blurring occurs in connection withat least a portion of the second touch state; the first touch state iscaused by a gesture touch duration being below a threshold, and thesecond touch state is caused by the gesture touch duration surpassingthe threshold.
 77. The method of claim 75, wherein: the first, thesecond, the third, the fourth, the fifth, the sixth, and the seventhgesture-touch duration feedback are each the same vibration.
 78. Amethod, comprising: at an apparatus including at least onenon-transitory memory storing a plurality of applications, a touchscreen, an actuator, and one or more processors in communication withthe at least one non-transitory memory, the touch screen, and theactuator: without a navigation application being launched, displaying,on the touch screen, a navigation application-specific icon associatedwith the navigation application via a home screen, the home screen forchoosing among the plurality of applications; detecting a first gesturethat is applied to the touch screen on the navigationapplication-specific icon and that is capable of causing a plurality oftouch states in connection with the navigation application-specificicon; based on a cessation of a first touch state of the plurality oftouch states being detected in connection with the navigationapplication-specific icon, launching the navigation application; withoutrequiring the navigation application to be launched beforehand and basedon a second touch state of the plurality of touch states being detectedin connection with the navigation application-specific icon, displayingat least one navigation application-specific option of a navigationapplication-specific menu on the home screen that is blurred to appearto be at a greater depth as compared to the navigationapplication-specific menu; without a browser application being launched,displaying, on the touch screen, a browser application-specific iconassociated with the browser application via the home screen; detecting asecond gesture that is applied to the touch screen on the browserapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the browser application-specificicon; based on a cessation of the first touch state of the plurality oftouch states being detected in connection with the browserapplication-specific icon, launching the browser application; withoutrequiring the browser application to be launched beforehand and based onthe second touch state of the plurality of touch states being detectedin connection with the browser application-specific icon, displaying atleast one browser application-specific option of a browserapplication-specific menu on the home screen that is blurred to appearto be at a greater depth as compared to the browser application-specificmenu, the displayed at least one browser application-specific optionincluding an option for access to bookmarks utilizing the browserapplication; without a media application being launched, displaying, onthe touch screen, a media application-specific icon associated with themedia application via the home screen; detecting a third gesture that isapplied to the touch screen on the media application-specific icon andthat is capable of causing the plurality of touch states in connectionwith the media application-specific icon; based on a cessation of thefirst touch state of the plurality of touch states being detected inconnection with the media application-specific icon, launching the mediaapplication; without requiring the media application to be launchedbeforehand and based on the second touch state of the plurality of touchstates being detected in connection with the media application-specificicon, displaying at least one media application-specific option of amedia application-specific menu on the home screen that is blurred toappear to be at a greater depth as compared to the mediaapplication-specific menu, the displayed at least one mediaapplication-specific option including an option for selecting at leastone track utilizing the media application; without a communicationapplication being launched, displaying, on the touch screen, acommunication application-specific icon associated with thecommunication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecommunication application-specific icon, launching the communicationapplication; without requiring the communication application to belaunched beforehand and based on the second touch state of the pluralityof touch states being detected in connection with the communicationapplication-specific icon, displaying at least one communicationapplication-specific option of a communication application-specific menuon the home screen that is blurred to appear to be at a greater depth ascompared to the communication application-specific menu, the displayedat least one communication application-specific option including anoption for access to one or more communication techniques for a contact;without a calendar application being launched, displaying, on the touchscreen, a calendar application-specific icon associated with thecalendar application via the home screen; detecting a fifth gesture thatis applied to the touch screen on the calendar application-specific iconand that is capable of causing the plurality of touch states inconnection with the calendar application-specific icon; based on acessation of the first touch state of the plurality of touch statesbeing detected in connection with the calendar application-specificicon, launching the calendar application; without requiring the calendarapplication to be launched beforehand and based on the second touchstate of the plurality of touch states being detected in connection withthe calendar application-specific icon, displaying at least one calendarapplication-specific option of a calendar application-specific menu onthe home screen that is blurred to appear to be at a greater depth ascompared to the calendar application-specific menu, the displayed atleast one calendar application-specific option including an option forcreating an appointment utilizing the calendar application; without acamera application being launched, displaying, on the touch screen, acamera application-specific icon associated with the camera applicationvia the home screen; detecting a sixth gesture that is applied to thetouch screen on the camera application-specific icon and that is capableof causing the plurality of touch states in connection with the cameraapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecamera application-specific icon, launching the camera application;without requiring the camera application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the camera application-specific icon,displaying at least one camera application-specific option of a cameraapplication-specific menu on the home screen that is blurred to appearto be at a greater depth as compared to the camera application-specificmenu, the displayed at least one camera application-specific optionincluding an option for setting a camera setting; without a phoneapplication being launched, displaying, on the touch screen, a phoneapplication-specific icon associated with the phone application via thehome screen; detecting a seventh gesture that is applied to the touchscreen on the phone application-specific icon and that is capable ofcausing the plurality of touch states in connection with the phoneapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thephone application-specific icon, launching the phone application; andwithout requiring the phone application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the phone application-specific icon,displaying at least one phone application-specific option of a phoneapplication-specific menu on the home screen that is blurred to appearto be at a greater depth as compared to the phone application-specificmenu, the displayed at least one phone application-specific optionincluding an option for accessing at least one of a voicemail or afavorite utilizing the phone application.
 79. A method, comprising: atan apparatus including at least one non-transitory memory storing aplurality of applications, a touch screen, an actuator, and one or moreprocessors in communication with the at least one non-transitory memory,the touch screen, and the actuator: without a navigation applicationbeing launched, displaying, on the touch screen, a navigationapplication-specific icon associated with the navigation application viaa home screen, the home screen for choosing among the plurality ofapplications; detecting a first gesture that is applied to the touchscreen on the navigation application-specific icon and that is capableof causing a plurality of touch states in connection with the navigationapplication-specific icon; in response to detection of a cessation of afirst touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, launching the navigation application; based on at least a portionof the detection of the first gesture, blurring at least a portion ofthe home screen other than a navigation application-specific menu, forproviding a first gesture-touch duration feedback in connection with thenavigation application-specific icon; in response to detection of asecond touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, displaying at least one navigation application-specific option ofthe navigation application-specific menu, the displayed at least onenavigation application-specific option including an option for access tonavigation information utilizing the navigation application; without abrowser application being launched, displaying, on the touch screen, abrowser application-specific icon associated with the browserapplication via the home screen; detecting a second gesture that isapplied to the touch screen on the browser application-specific icon andthat is capable of causing the plurality of touch states in connectionwith the browser application-specific icon; in response to detection ofa cessation of the first touch state of the plurality of touch statescaused by the detection of the second gesture on the browserapplication-specific icon, launching the browser application; based onat least a portion of the detection of the second gesture, blurring atleast a portion of the home screen other than a browserapplication-specific menu, for providing a second gesture-touch durationfeedback in connection with the browser application-specific icon; inresponse to detection of the second touch state of the plurality oftouch states caused by the detection of the second gesture on thebrowser application-specific icon, displaying at least one browserapplication-specific option of the browser application-specific menu,the displayed at least one browser application-specific option includingan option for access to bookmarks utilizing the browser application;without a media application being launched, displaying, on the touchscreen, a media application-specific icon associated with the mediaapplication via the home screen; detecting a third gesture that isapplied to the touch screen on the media application-specific icon andthat is capable of causing the plurality of touch states in connectionwith the media application-specific icon; in response to detection of acessation of the first touch state of the plurality of touch statescaused by the detection of the third gesture on the mediaapplication-specific icon, launching the media application; based on atleast a portion of the detection of the third gesture, blurring at leasta portion of the home screen other than a media application-specificmenu, for providing a third gesture-touch duration feedback inconnection with the media application-specific icon; in response todetection of the second touch state of the plurality of touch statescaused by the detection of the third gesture on the mediaapplication-specific icon, displaying at least one mediaapplication-specific option of the media application-specific menu, thedisplayed at least one media application-specific option including anoption for selecting at least one track utilizing the media application;without a communication application being launched, displaying, on thetouch screen, a communication application-specific icon associated withthe communication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, launching the communication application;based on at least a portion of the detection of the fourth gesture,blurring at least a portion of the home screen other than acommunication application-specific menu, for providing a fourthgesture-touch touch duration feedback in connection with thecommunication application-specific icon; in response to detection of thesecond touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, displaying at least one communicationapplication-specific option of the communication application-specificmenu, the displayed at least one communication application-specificoption including an option for access to one or more communicationtechniques for a contact; without a calendar application being launched,displaying, on the touch screen, a calendar application-specific iconassociated with the calendar application via the home screen; detectinga fifth gesture that is applied to the touch screen on the calendarapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the calendar application-specificicon; in response to detection of a cessation of the first touch stateof the plurality of touch states caused by the detection of the fifthgesture on the calendar application-specific icon, launching thecalendar application; based on at least a portion of the detection ofthe fifth gesture, blurring at least a portion of the home screen otherthan a calendar application-specific menu, for providing a fifthgesture-touch duration feedback in connection with the calendarapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thefifth gesture on the calendar application-specific icon, displaying atleast one calendar application-specific option of the calendarapplication-specific menu, the displayed at least one calendarapplication-specific option including an option for creating anappointment utilizing the calendar application; without a cameraapplication being launched, displaying, on the touch screen, a cameraapplication-specific icon associated with the camera application via thehome screen; detecting a sixth gesture that is applied to the touchscreen on the camera application-specific icon and that is capable ofcausing the plurality of touch states in connection with the cameraapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the sixth gesture on the camera application-specific icon,launching the camera application; based on at least a portion of thedetection of the sixth gesture, blurring at least a portion of the homescreen other than a camera application-specific menu, for providing asixth gesture-touch duration feedback in connection with the cameraapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesixth gesture on the camera application-specific icon, displaying atleast one camera application-specific option of the cameraapplication-specific menu, the displayed at least one cameraapplication-specific option including an option for setting a camerasetting; without a phone application being launched, displaying, on thetouch screen, a phone application-specific icon associated with thephone application via the home screen; detecting a seventh gesture thatis applied to the touch screen on the phone application-specific iconand that is capable of causing the plurality of touch states inconnection with the phone application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the seventh gesture on the phoneapplication-specific icon, launching the phone application; based on atleast a portion of the detection of the seventh gesture, blurring atleast a portion of the home screen other than a phoneapplication-specific menu, for providing a seventh gesture-touchduration feedback in connection with the phone application-specificicon; and in response to detection of the second touch state of theplurality of touch states caused by the detection of the seventh gestureon the phone application-specific icon, displaying at least one phoneapplication-specific option of the phone application-specific menu, thedisplayed at least one phone application-specific option including anoption for accessing at least one of a voicemail or a favorite utilizingthe phone application.
 80. The method of claim 79, wherein, for each ofthe first, the second, the third, the fourth, the fifth, the sixth, andthe seventh gestures, the blurring occurs in connection with the secondtouch state.
 81. The method of claim 79, wherein, for each of the first,the second, the third, the fourth, the fifth, the sixth, and the seventhgestures, the blurring occurs in connection with the second touch state,and only in an absence of the cessation of the first touch state, forproviding a cue.
 82. The method of claim 79, wherein, for each of thefirst, the second, the third, the fourth, the fifth, the sixth, and theseventh gestures, the first touch state is caused by a gesture touchduration remaining below a threshold, and the second touch state iscaused by the gesture touch duration surpassing the threshold.
 83. Themethod of claim 79, wherein, for each of the first, the second, thethird, the fourth, the fifth, the sixth, and the seventh gestures, theblurring is performed to emphasize the display of a respective option ina different virtual display layer.
 84. The method of claim 83, whereinthe respective option is magnified and sharpened.
 85. The method ofclaim 79, wherein, for each of the first, the second, the third, thefourth, the fifth, the sixth, and the seventh gestures, the blurring isperformed in response to the detection of the second touch state. 86.The method of claim 79, wherein, for each of the first, the second, thethird, the fourth, the fifth, the sixth, and the seventh gestures, theblurring is performed in response to the detection of the second touchstate, and only in an absence of the cessation of the first touch state.87. The method of claim 79, wherein, for each of the first, the second,the third, the fourth, the fifth, the sixth, and the seventh gestures,the blurring is performed in response to the detection of the secondtouch state, and only in an absence of the cessation of the first touchstate.
 88. The method of claim 79, wherein, for each of the first, thesecond, the third, the fourth, the fifth, the sixth, and the seventhgestures, the blurring is performed simultaneously with the display ofthe respective option both in response to the detection of the secondtouch state, and only in an absence of the cessation of the first touchstate.
 89. The method of claim 88, wherein at least one of: said touchscreen includes a touch interface and a display; said touch screen is acombination of a touch interface and a display; said touch screen is ona front face of the apparatus; said touch screen is on a back face ofthe apparatus; said touch screen, the actuator, and the memory aredirectly coupled to the one or more processors; said touch screen, theactuator, and the memory are indirectly coupled to the one or moreprocessors; said touch screen, the actuator, and the memory are incommunication with the one or more processors with at least oneintermediate component therebetween; said at least one non-transitorymemory is in communication with the one or more processors without theplurality of applications being in communication with the one or moreprocessors; each instance of the displaying, the launching, theoutputting, and the performing are acts; each instance of thedisplaying, the launching, the outputting, and the performing are notsteps; said one or more processors is in direct communication with theat least one non-transitory memory, the touch screen, and the actuator;said one or more processors is in indirect communication with the atleast one non-transitory memory, the touch screen, and the actuator;said one or more processors is in communication, via at least one bus,with the at least one non-transitory memory, the touch screen, and theactuator; said at least one non-transitory memory includes a singlememory for storing instructions and the plurality of applications; saidat least one non-transitory memory includes a first memory for storinginstructions and a second memory for storing the plurality ofapplications; each of the first, the second, the third, the fourth, thefifth, the sixth, and the seventh gestures includes at least one of atouch gesture and/or a press gesture; each of the first, the second, thethird, the fourth, the fifth, the sixth, and the seventh gesturesincludes a combination of a touch gesture and a press gesture; each ofthe first, the second, the third, the fourth, the fifth, the sixth, andthe seventh gestures is detected utilizing one or more of a plurality ofcontact-sensing technologies including a capacitive-based contactsensing technology, a resistive-based contact sensing technology, anoptical-based contact sensing technology, or a surface acousticwave-based contact sensing technology; each of the first, the second,the third, the fourth, the fifth, the sixth, and the seventh gesturesresults in a touch signal being generated that, during a first componentof the respective gesture, is not touch duration-dependent, and, duringa second component of the respective gesture, is touchduration-dependent; each of the first, the second, the third, thefourth, the fifth, the sixth, and the seventh gestures are alsopressure-dependent; each of the first, the second, the third, thefourth, the fifth, the sixth, and the seventh gestures are notpressure-dependent; said touch screen is a two-dimensional layered userinterface; said touch screen is a single layer user interface thatsimulates a three-dimensional layered user interface through use ofvirtual display layers; said launch of each of the applications isassociated with the first touch state, by a user; said launch of each ofthe applications is associated with the first touch state, by adeveloper; said launch of each of the applications is associated withthe first touch state, via system learning; said display of each of theat least one options is associated with the second touch state, by auser; said display of each of the at least one options is associatedwith the second touch state, by a developer; said display of each of theat least one options is associated with the second touch state, viasystem learning; each of said at least one options and the home screenare each part of different layers with different three-dimensional depthqueues; said at least one navigation application-specific option and thehome screen are each part of different layers that are accessible viadifferent inputs of different touch durations; said at least onenavigation application-specific option and the home screen are each partof different layers that are accessible via different inputs ofdifferent touch durations, and the blurring indicates a movement throughthe different layers; said at least one navigation application-specificoption and the home screen are part of a three-dimensional layered userinterface that can be operated upon via a back interaction surface; saidnavigation application-specific icon includes an iconic representationof the navigation application; said navigation application-specific iconincludes text specific to the navigation application; said navigationinformation includes route information; said navigation informationincludes a location; said navigation information includes a map; saidnavigation information includes an address; said bookmarks includefavorites; said option for accessing the at least one of the voicemailor the favorite utilizing the phone application, includes an option foraccessing the voicemail; said option for accessing the at least one ofthe voicemail or the favorite utilizing the phone application, includesan option for accessing the favorite; said option for selecting the atleast one track to be played utilizing the media application, includesan option for selecting a group of tracks to be played utilizing themedia application; said first gesture-touch duration feedback inconnection with the browser application-specific icon includes a visualindication, via the blurring of the at least portion of the home screenother than the menu associated with the browser application-specificicon, of a current touch duration of the first gesture; saidcommunication application includes a contacts application; saidcommunication application includes a messaging application; said one ormore communication techniques for the contact include one communicationtechnique; said one or more communication techniques for the contactinclude more than one communication technique; said access to the one ormore communication techniques for the contact is provided in response todetection of the second touch state of the plurality of touch statescaused by the detection of the fourth gesture on the communicationapplication-specific icon, without requiring the communicationapplication to be launched; said access to the one or more communicationtechniques for the contact is provided in response to detection of thesecond touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, without requiring the communicationapplication to be launched, and the communication application islaunched if the one or more communication techniques for the contact isselected by the user; said navigation application-specific icon isdisplayed without the navigation application being launched, by beingdisplayed before the navigation application is launched for an initialtime; said navigation application-specific icon is displayed without thenavigation application being launched, by being displayed before thenavigation application is launched a second time after being launched afirst time and subsequently being closed; each of the first, the second,the third, the fourth, the fifth, the sixth, and the seventh gestures iscapable of causing the first touch state by including different touchdurations that are below a threshold; each of the first, the second, thethird, the fourth, the fifth, the sixth, and the seventh gestures iscapable of causing the first touch state by including different touchdurations that remain below a threshold; each of the first, the second,the third, the fourth, the fifth, the sixth, and the seventh gestures iscapable of causing the second touch state by including different touchdurations that surpass a threshold; each of the first, the second, thethird, the fourth, the fifth, the sixth, and the seventh gestures iscapable of causing the second touch state by including different touchdurations that surpass, at least once, a threshold; said cessation ofthe first touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, includes a stopping of the first gesture; said cessation of thefirst touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, includes a removal of all touch in connection with the firstgesture; said first touch state is capable of existing in a first usagescenario without the second touch state existing during the first usagescenario, and the second touch state is capable of existing in a secondusage scenario without the first touch state existing during the secondusage scenario; or where, in response to detection of the second touchstate of the plurality of touch states caused by the detection of thefifth gesture on the calendar application-specific icon, the at leastone calendar application-specific option including creating theappointment is displayed by at least partially launching the calendarapplication, but without launching the calendar application in the eventthe cessation of the first touch state of the plurality of touch statescaused by the detection of the first gesture on the calendarapplication-specific icon.
 90. The method of claim 54, wherein thefeedback that is perceptible to touch is output before the causation ofthe display of the at least one option, based on the second duration oftouch applied to the touch screen on the application-specific icon beingdetected.
 91. A method, comprising: at a device with at least onenon-transitory memory, a touch screen, and one or more processors incommunication with the at least one non-transitory memory, and the touchscreen: displaying an object utilizing an interface of a particularapplication; detecting a press gesture via the touch screen on theobject; in response to detection of a cessation of the press gesture viathe touch screen on the object based on a duration of the press gesturebeing detected to not exceed a duration threshold: displayinginformation associated with the object utilizing another interface ofthe particular application; and based on at least a portion of the pressgesture being detected via the touch screen on the object and theduration of the press gesture being detected to exceed the durationthreshold: displaying a menu including at least one option for, inresponse to detection of a selection thereof, performing an operation,and displaying at least a portion of the information associated with theobject, where, based on the at least portion of the press gesture beingdetected via the touch screen on the object and the duration of thepress gesture being detected to exceed the duration threshold: the menuand the at least portion of the information are displayed in at leastone first virtual display layer which appears above at least one secondvirtual display layer, the at least one second virtual display layerincludes at least a portion of the interface of the particularapplication that remains at least partially visible, and the at leastportion of the interface of the particular application of the at leastone second virtual display layer is altered, by at least one of blurringor fogging, to appear at a first depth that is greater than a seconddepth of at least one of the menu or the at least portion of theinformation.
 92. The method of claim 91, wherein the operation includesperforming an operation on the object.
 93. The method of claim 91,wherein the operation includes performing an operation on at least partof the information.
 94. The method of claim 91, wherein the operationincludes performing an operation on data other than the information. 95.The method of claim 94, wherein the at least portion of the informationand the menu are displayed subsequent to a tactile feedback beingoutput.
 96. The method of claim 91, wherein the interface and theanother interface include separate windows.
 97. The method of claim 91,wherein the at least portion of the information and the menu aredisplayed as part of a same single window in the at least one firstvirtual display layer.
 98. The method of claim 91, wherein the at leastportion of the information and the menu are displayed via differentareas in the at least one first virtual display layer.
 99. The method ofclaim 98, wherein, in response to detecting a single user input inconnection with the at least one first virtual display layer, sizes ofthe different areas are changed.
 100. The method of claim 98, wherein,in response to detecting a single user input in connection with the atleast one first virtual display layer, sizes of the different areas arechanged differently.
 101. The method of claim 98, wherein, in responseto detecting a single user input in connection with the at least onefirst virtual display layer, locations of the different areas arechanged.
 102. The method of claim 98, wherein, in response to detectinga single user input in connection with the at least one first virtualdisplay layer, a visibility of a first one of the different areas isincreased and a visibility of a second one of the different areas isdecreased.
 103. The method of claim 91, wherein, in response to the atleast portion of the press gesture being detected via the touch screenon the object and the duration of the press gesture being detected toexceed the duration threshold, the display of the menu and the at leastportion of the information is ceased such that the interface of theparticular application is displayed, in response to detection of aseparate tap gesture on a location that does not correspond to the menunor the at least portion of the information.
 104. The method of claim91, wherein, in response to detection of a selection touch via the touchscreen on the displayed at least portion of the information associatedwith the object, the information associated with the object is displayedutilizing the another interface, that appears the same as that displayedin response to detection of the cessation of the press gesture via thetouch screen on the object and the duration of the press gesture beingdetected to not exceed the duration threshold.
 105. The method of claim91, wherein the at least portion of the interface of the particularapplication of the at least one second virtual display layer is altered,by being faded out, while the first virtual display layer is being fadedin.
 106. The method of claim 91, wherein, based on the at least portionof the press gesture being detected via the touch screen on the objectand the duration of the press gesture being detected to exceed theduration threshold: the object is pulsed.
 107. The method of claim 91,wherein, based on the at least portion of the press gesture beingdetected via the touch screen on the object and the duration of thepress gesture being detected to exceed the duration threshold: a borderis displayed around the object.
 108. The method of claim 91, wherein theat least portion of the information and the menu are displayed by beingmagnified and sharpened.
 109. The method of claim 91, wherein: in afirst scenario involving a first gesture: the cessation of the pressgesture via the touch screen on the object is not detected when theduration of the press gesture is detected to not exceed the durationthreshold, and the information associated with the object is notdisplayed utilizing the another interface, and the duration of the pressgesture is detected to exceed the duration threshold, and the at leastportion of the information and the menu are displayed; and in a secondscenario involving a second gesture: the cessation of the press gesturevia the touch screen on the object is detected when the duration of thepress gesture is detected to not exceed the duration threshold, and theinformation associated with the object is displayed utilizing theanother interface, and the duration of the press gesture is not detectedto exceed the duration threshold, and the menu is not displayed. 110.The method of claim 91, wherein the at least portion of the interface ofthe particular application of the at least one second virtual displaylayer is altered, by the blurring.
 111. The method of claim 91, whereinthe at least portion of the interface of the particular application ofthe at least one second virtual display layer is altered, by thefogging.
 112. The method of claim 91, wherein the at least one of themenu or the at least portion of the information does not overlap the atleast portion of the interface of the particular application of the atleast one second virtual display layer.
 113. The method of claim 91,wherein at least one of: said touch screen includes a touch interfaceand a display; said touch screen is a combination of a touch interfaceand a display; said touch screen is on a front face of the device; saidtouch screen is on a back face of the device; said one or moreprocessors is in direct communication with the at least onenon-transitory memory, and the touch screen; said one or more processorsis in indirect communication with the at least one non-transitorymemory, and the touch screen; said one or more processors is incommunication, via at least one bus, with the at least onenon-transitory memory, and the touch screen; said press gesture isdetected on an entirety of the object; said press gesture is detected onat least a portion of the object; said press gesture on the object isdetected, by being detected within a selection boundary that, at leastin part, overlaps the object; said interface includes a softwareinterface; said interface includes a graphical user interface; saidpress gesture is detected utilizing one or more of a plurality ofcontact-sensing technologies including a capacitive-based contactsensing technology, a resistive-based contact sensing technology, anoptical-based contact sensing technology, or a surface acousticwave-based contact sensing technology; said touch screen is atwo-dimensional layered user interface; said touch screen is a singlelayer user interface that simulates a three-dimensional layered userinterface through use of virtual display layers; said press gesture onthe touch screen on the object is detected, by being detected on aselection boundary that, at least in part, overlaps the object; saidoperation includes a function; said operation includes a displayfunction; said press gesture does not involve movement across aninteraction surface of the touch screen; said press gesture does notinvolve movement in proximity to an interaction surface of the touchscreen; said at least one first virtual display layer appears above theat least one second virtual display layer, at least partially as aresult of the alteration; said at least one first virtual display layerappears above the at least one second virtual display layer, at leastpartially as a result of a three-dimensional depth cue; said alterationincludes a three-dimensional depth cue; said alteration utilizes athree-dimensional depth cue; said at least portion of the interface ofthe particular application of the at least one second virtual displaylayer appears at the first depth that is greater than the second depthof the menu and the at least portion of the information, as a result ofthe alteration; said at least one first virtual display layer appearsabove the at least one second virtual display layer by having a smallerz-value; said at least one first virtual display layer appears above theat least one second virtual display layer by at least partiallyoverlapping the at least one second virtual display layer; said at leastone first virtual display layer appears above the at least one secondvirtual display layer by at least partially overlapping the at least onesecond virtual display layer; said at least one first virtual displaylayer appears above the at least one second virtual display layer evenwithout overlapping the at least portion of the interface of theparticular application of the at least one second virtual display layer;said at least one first virtual display layer appears above the at leastone second virtual display layer even without the at least one of themenu or the at least portion of the information overlapping the at leastportion of the interface of the particular application of the at leastone second virtual display layer; said at least one first virtualdisplay layer appears above the at least one second virtual displaylayer even without the at least one of the menu or the at least portionof the information overlapping the at least portion of the interface ofthe particular application of the at least one second virtual displaylayer that is altered; said at least one first virtual display layerappears above the at least one second virtual display layer even withoutthe at least one of the menu or the at least portion of the informationoverlapping the at least portion of the interface of the particularapplication of the at least one second virtual display layer, by havedifferent z-values; said at least one first virtual display layerappears above the at least one second virtual display layer even withoutthe menu nor the at least portion of the information overlapping the atleast portion of the interface of the particular application of the atleast one second virtual display layer that is displayed to be altered;said at least portion of the interface of the particular applicationremains at least partially visible, by the at least one of the menu orthe at least portion of the information being at least partiallytranslucent; said at least portion of the interface of the particularapplication remains at least partially visible, by the at least one ofthe menu or the at least portion of the information being at leastpartially translucent while overlapping the at least portion of theinterface of the particular application; said at least portion of theinterface of the particular application remains at least partiallyvisible, by the at least one of the menu or the at least portion of theinformation not overlapping the at least portion of the interface of theparticular application; said appearance of the at least portion of theinterface of the particular application of the at least one secondvirtual display layer at the first depth that is greater than the seconddepth of the menu and the at least portion of the information, is notcaused by, but is emphasized by the alteration; said appearance of theat least one first virtual display layer above the at least one secondvirtual display layer, is not caused by, but is emphasized by thealteration; said menu and the at least portion of the information aredisplayed in the at least one first and second virtual display layers,at least partially as a result of the alteration; said alterationemphasizes that the menu and the at least portion of the information aredisplayed in the at least one first and second virtual display layers;said alteration emphasizes the fact that the menu and the at leastportion of the information are displayed in the at least one first andsecond virtual display layers; said alteration includes at least one of:an effect, a manipulation, a transformation, an animation, or anoperation; said alteration includes a shading of visible portions of theat least one second virtual display layer; said alteration includes ablurring of visible portions of the at least one second virtual displaylayer; said at least portion of the interface of the particularapplication of the at least one second virtual display layer is alteredto appear at the first depth that is greater than the second depth ofthe menu and the at least portion of the information, to give a visualindication of simulated depth; said at least one of the menu or the atleast portion of the information, includes the menu; said at least oneof the menu or the at least portion of the information, includes the atleast portion of the information; said at least one of the menu or theat least portion of the information, includes the menu and the at leastportion of the information; said second depth is of the at least onefirst virtual display layer; said at least portion of the information isthe same as the information; said at least portion of the information isonly a subset of the information; said information includes an entiretyof content; said information includes an entirety of a web page; saidinformation includes a portion of content; said information includesonly a portion of content; said information includes a portion of a webpage; said information includes only a portion of a web page; said inresponse to detection of the cessation of the press gesture via thetouch screen on the object and the duration of the press gesture beingdetected to not exceed the duration threshold, includes in immediateresponse to detection of the cessation of the press gesture via thetouch screen on the object and the duration of the press gesture beingdetected to not exceed the duration threshold; said in response todetection of the cessation of the press gesture via the touch screen onthe object when the duration of the press gesture is detected to notexceed the duration threshold, includes in direct response to detectionof the cessation of the press gesture via the touch screen on the objectand the duration of the press gesture being detected to not exceed theduration threshold; said in response to detection of the cessation ofthe press gesture via the touch screen on the object when the durationof the press gesture is detected to not exceed the duration threshold,includes in indirect response to detection of the cessation of the pressgesture via the touch screen on the object and the duration of the pressgesture being detected to not exceed the duration threshold; said basedon the at least portion of the press gesture being detected via thetouch screen on the object includes any time the at least portion of thepress gesture is detected via the touch screen on the object; said basedon the at least portion of the press gesture being detected via thetouch screen on the object includes only a portion of time during the atleast portion of the press gesture being detected via the touch screenon the object; said based on the at least portion of the press gesturebeing detected via the touch screen on the object includes an entiretyof time during the at least portion of the press gesture being detectedvia the touch screen on the object; said based on the at least portionof the press gesture being detected via the touch screen on the objectincludes only during the at least portion of the press gesture beingdetected via the touch screen on the object; said based on the durationof the press gesture being detected to exceed the duration thresholdincludes only based on the duration of the press gesture being detectedto exceed the duration threshold; said based on the duration of thepress gesture being detected to exceed the duration threshold includesany time based on the duration of the press gesture being detected toexceed the duration threshold; said based on the duration of the pressgesture being detected to exceed the duration threshold includes anytime after the duration of the press gesture being detected to exceedthe duration threshold; said based on the duration of the press gesturebeing detected to exceed the duration threshold includes an instant intime based on the duration of the press gesture is first detected toexceed the duration threshold; said based on the duration of the pressgesture being detected to exceed the duration threshold includes aninstant in time after the duration of the press gesture being detectedto exceed the duration threshold; said based on the duration of thepress gesture being detected to not exceed the duration thresholdincludes any time based on the duration of the press gesture beingdetected to not exceed the duration threshold; said based on theduration of the press gesture being detected to not exceed the durationthreshold includes any time after the duration of the press gesturebeing detected to not exceed the duration threshold; said based on theduration of the press gesture being detected to not exceed the durationthreshold includes an instant in time the duration of the press gestureis first detected to not exceed the duration threshold; said based onthe duration of the press gesture being detected to not exceed theduration threshold includes an instant in time after the duration of thepress gesture is detected to not exceed the duration threshold; eachinstance of said based on involves only a portion of a duration; eachinstance of said based on includes while; each instance of said based onincludes when; said selection includes a tap gesture; said selectionincludes a touch on the at least one option; said selection includes acessation of a touch on the at least one option; said information isassociated with the object by being included as part of the object; saidinformation is associated with the object by being separate from theobject, but corresponding thereto; said menu and the at least portion ofthe information are displayed by an operating system; said menu and theat least portion of the information are displayed by the particularapplication; said menu and the at least portion of the information aredisplayed are part of the same graphical user interface element of theat least one first virtual display layer; said menu and the at leastportion of the information are displayed are part of different graphicaluser interface elements of the at least one first virtual display layer;in a first scenario involving a first gesture: the cessation of thepress gesture via the touch screen on the object is not detected whenthe duration of the press gesture is detected to not exceed the durationthreshold, and the information associated with the object is notdisplayed utilizing the another interface, and the duration of the pressgesture is detected to exceed the duration threshold, and the at leastportion of the information and the menu are displayed; and in a secondscenario involving a second gesture: the cessation of the press gesturevia the touch screen on the object is detected when the duration of thepress gesture is detected to not exceed the duration threshold, and theinformation associated with the object is displayed utilizing theanother interface, and the duration of the press gesture is not detectedto exceed the duration threshold, and the menu is not displayed; said atleast portion of the interface of the particular application thatremains at least partially visible is that which is not obstructed bythe at least one first virtual display layer; said at least portion ofthe interface of the particular application that remains at leastpartially visible is that which is not obstructed by the menu and the atleast portion of the information; said object includes at least one ofan application icon, a message item, a photo, or a hyperlink; said atleast portion of the information is displayed and the menu is displayedduring the same portion of the press gesture; or said at least portionof the information is displayed and the menu is displayed duringdifferent portions of the press gesture.
 114. A method, comprising: at adevice with at least one non-transitory memory, a touch screen, and oneor more processors in communication with the at least one non-transitorymemory, and the touch screen: displaying a message item utilizing aninterface of a communication application; detecting a press gesture viathe touch screen on the message item; in response to detection of acessation of the press gesture via the touch screen on the message itemand a duration of the press gesture being detected to not exceed aduration threshold: displaying at least a portion of a messageassociated with the message item utilizing another interface of thecommunication application; and in response to at least a portion of thepress gesture being detected via the touch screen on the message itemand the duration of the press gesture being detected to exceed theduration threshold: displaying a menu including at least one option for,in response to detection of a selection thereof, performing anoperation, and displaying at least part of the at least portion of themessage associated with the message item, where the menu and the atleast part of the at least portion of the message are displayed in atleast one first virtual display layer which appears above at least onesecond virtual display layer that includes at least a portion of theinterface of the communication application that remains at leastpartially visible and is altered, by at least one of blurring orfogging, to appear at a first depth that is greater than a second depthof at least one of the menu or the at least part of the at least portionof the message.
 115. The method of claim 114, wherein the operationincludes generating a reply to the message.
 116. A method, comprising:at a device including at least one non-transitory memory, a touchscreen, and one or more processors in communication with the at leastone non-transitory memory and the touch screen: displaying a hyperlinkutilizing an interface of a network browser application; detecting apress gesture via the touch screen on the hyperlink; in response todetection of a cessation of the press gesture via the touch screen onthe hyperlink and a duration of the press gesture being detected to notexceed a duration threshold: displaying information associated with thehyperlink utilizing another interface of the network browserapplication; and based on at least a portion of the press gesture beingdetected via the touch screen on the hyperlink and the duration of thepress gesture being detected to exceed the duration threshold:displaying a menu including at least one option for, in response todetection of a selection thereof, performing an operation on thehyperlink, and displaying at least a portion of the informationassociated with the hyperlink, where the menu and the at least portionof the information are displayed in at least one first virtual displaylayer which appears above at least one second virtual display layer thatincludes at least a portion of the interface of the network browserapplication that remains at least partially visible and is altered, byat least fading, to appear at a first depth that is greater than asecond depth of at least one of the menu or the at least portion of theinformation.
 117. The method of claim 116, wherein the informationincludes at least a portion of a web address associated with thehyperlink.
 118. The method of claim 116, wherein the informationincludes at least a portion of a web page including at least one image,where the web page is accessible via the hyperlink.
 119. The method ofclaim 116, wherein the information includes at least a portion of a webpage including at least one image, and the operation includes openingthe hyperlink in a background tab of the network browser application fordisplaying the at least portion of the web page including the at leastone image.
 120. The method of claim 116, wherein the informationincludes at least a portion of a web page associated with the hyperlinkincluding at least one image, and the operation includes opening thehyperlink in a new tab of the network browser application for displayingthe at least portion of the web page including the at least one image.121. The method of claim 116, wherein the operation includes opening atleast a portion of a web page associated with the hyperlink in abackground tab of the network browser application.
 122. The method ofclaim 116, wherein the at least one option includes a plurality ofoptions for a plurality of operations including: a first operation forsharing a web address associated with the hyperlink, and a secondoperation for copying the web address.
 123. The method of claim 116,wherein the at least one option includes a plurality of options for aplurality of operations including: a first plurality of operations foroperating only on at least one image of a web page associated with thehyperlink, and a second plurality of operations for operating on a webaddress associated with the hyperlink.
 124. The method of claim 116,wherein the hyperlink includes a textual hyperlink, the informationincludes at least a portion of a web address associated with thehyperlink, and the at least one option includes: a first option for, inresponse to detection of a selection thereof, opening a web pageassociated with the hyperlink in a new tab of the network browserapplication for displaying therein at least a portion of the web pageincluding at least one image; a second option for, in response todetection of a selection thereof, opening the web page in another tab ofthe network browser application for displaying therein the at leastportion of the web page including the at least one image; and a thirdoption for, in response to detection of a selection thereof, copying theweb address.
 125. The method of claim 124, wherein: an initiation of thefading is performed simultaneously with an initiation of the display ofthe at least portion of the information associated with the hyperlink;and the fading is performed instantaneously.
 126. The method of claim124, wherein an initiation of the fading and an initiation of thedisplay of the at least portion of the information associated with thehyperlink occur subsequent to a feedback perceptible to touch beingoutputted, utilizing an actuator.
 127. The method of claim 116, whereinthe hyperlink includes a textual hyperlink, the information includes atleast a portion of a web address associated with the hyperlink and atleast a portion of a web page including at least one image accessiblevia the hyperlink, and the at least one option includes: a first optionfor, in response to detection of a selection thereof, opening the webpage in a new tab of the network browser application for displaying theat least portion of the web page including the at least one image; asecond option for, in response to detection of a selection thereof,opening the web page in another tab of the network browser applicationfor displaying the at least portion of the web page including the atleast one image; a third option for, in response to detection of aselection thereof, copying the web address; a fourth option for, inresponse to detection of a selection thereof, sharing the at least oneimage; a fifth option for, in response to detection of a selectionthereof, opening the at least one image.
 128. The method of claim 127,wherein the another tab includes a background tab.
 129. The method ofclaim 127, wherein the opening the at least one image includes openingonly the at least one image in a new tab of the network browserapplication for displaying only the at least one image.
 130. The methodof claim 127, wherein the opening the web page includes displaying theat least one image in addition to text of the web page.
 131. The methodof claim 127, wherein: an initiation of the fading is performedsimultaneously with an initiation of the display of the menu.
 132. Themethod of claim 127, wherein an initiation of the fading and aninitiation of the display of the menu and the at least portion of theinformation associated with the hyperlink, occur subsequent to afeedback perceptible to touch being outputted, utilizing an actuator.133. The method of claim 116, wherein an initiation of the fading isperformed simultaneously with an initiation of the display of the atleast portion of the information associated with the hyperlink.
 134. Themethod of claim 116, wherein the fading is performed instantaneously.135. The method of claim 116, wherein the hyperlink is visuallytransformed simultaneously with the at least portion of the pressgesture being detected via the touch screen on the hyperlink and withoutthe display of the menu and without the display of the at least portionof the information associated with the hyperlink.
 136. The method ofclaim 116, wherein an initiation of the fading and an initiation of thedisplay of the at least portion of the information associated with thehyperlink occur after a feedback perceptible to touch is outputted,utilizing an actuator.
 137. The method of claim 116, wherein aninitiation of the fading and an initiation of the display of the atleast portion of the information associated with the hyperlink bothoccur before detecting a cessation of the press gesture and the durationof the press gesture being detected to exceed the duration threshold.138. The method of claim 116, wherein at least one of: said touch screenincludes a touch interface and a display; said touch screen is acombination of a touch interface and a display; said touch screen is ona front face of the device; said touch screen is on a back face of thedevice; said touch screen, and the memory are directly coupled to theone or more processors; said touch screen, and the memory are indirectlycoupled to the one or more processors; said touch screen, and the memoryare in communication with the one or more processors with at least oneintermediate component therebetween; each instance of the displaying,the detecting, and the performing are acts; each instance of thedisplaying, the detecting, and the performing are not steps; said one ormore processors is in direct communication with the at least onenon-transitory memory, and the touch screen; said one or more processorsis in indirect communication with the at least one non-transitorymemory, and the touch screen; said one or more processors is incommunication, via at least one bus, with the at least onenon-transitory memory, and the touch screen; said operation is performedon the hyperlink by using the hyperlink; said operation is performed onthe hyperlink by using a web address associated with the hyperlink; saidoperation is performed on the hyperlink by extracting a web addressassociated with the hyperlink; said operation is performed on thehyperlink by using the hyperlink to complete the operation; saidoperation is performed on the hyperlink by using the hyperlink tocomplete a function; said operation is performed on the hyperlink byusing the hyperlink to complete a function associated with theoperation; said press gesture is detected on an entirety of thehyperlink; said press gesture is detected on at least a portion of thehyperlink; said press gesture on the hyperlink is detected, by beingdetected within a selection boundary that, at least in part, overlapsthe hyperlink; said interface includes a software interface; saidinterface includes a graphical user interface; said press gesture isdetected utilizing one or more of a plurality of contact-sensingtechnologies including a capacitive-based contact sensing technology, aresistive-based contact sensing technology, an optical-based contactsensing technology, or a surface acoustic wave-based contact sensingtechnology; said touch screen is a two-dimensional layered userinterface; said touch screen is a single layer user interface thatsimulates a three-dimensional layered user interface through use ofvirtual display layers; said press gesture on the touch screen on thehyperlink is detected, by being detected on a selection boundary that,at least in part, overlaps the hyperlink; said operation includes afunction; said operation includes a display function; said press gesturedoes not involve movement across an interaction surface of the touchscreen; said press gesture does not involve movement in proximity to aninteraction surface of the touch screen; said at least one first virtualdisplay layer appears above the at least one second virtual displaylayer, at least partially as a result of the alteration; said at leastone first virtual display layer appears above the at least one secondvirtual display layer, at least partially as a result of athree-dimensional depth cue; said alteration includes athree-dimensional depth cue; said alteration utilizes athree-dimensional depth cue; said at least portion of the interface ofthe network browser application of the at least one second virtualdisplay layer appears at the first depth that is greater than the seconddepth of the menu and the at least portion of the information, as aresult of the alteration; said at least one first virtual display layerappears above the at least one second virtual display layer by having asmaller z-value; said at least one first virtual display layer appearsabove the at least one second virtual display layer by at leastpartially overlapping the at least one second virtual display layer;said at least one first virtual display layer appears above the at leastone second virtual display layer by at least partially overlapping theat least one second virtual display layer; said at least one firstvirtual display layer appears above the at least one second virtualdisplay layer even without overlapping the at least portion of theinterface of the network browser application of the at least one secondvirtual display layer; said at least one first virtual display layerappears above the at least one second virtual display layer even withoutthe at least one of the menu or the at least portion of the informationoverlapping the at least portion of the interface of the network browserapplication of the at least one second virtual display layer; said atleast one first virtual display layer appears above the at least onesecond virtual display layer even without the at least one of the menuor the at least portion of the information overlapping the at leastportion of the interface of the network browser application of the atleast one second virtual display layer that is altered; said at leastone first virtual display layer appears above the at least one secondvirtual display layer even without the at least one of the menu or theat least portion of the information overlapping the at least portion ofthe interface of the network browser application of the at least onesecond virtual display layer, by have different z-values; said at leastone first virtual display layer appears above the at least one secondvirtual display layer even without the menu nor the at least portion ofthe information overlapping the at least portion of the interface of thenetwork browser application of the at least one second virtual displaylayer that is displayed to be altered; said at least portion of theinterface of the network browser application remains at least partiallyvisible, by the at least one of the menu or the at least portion of theinformation being at least partially translucent; said at least portionof the interface of the network browser application remains at leastpartially visible, by the at least one of the menu or the at leastportion of the information being at least partially translucent whileoverlapping the at least portion of the interface of the network browserapplication; said at least portion of the interface of the networkbrowser application remains at least partially visible, by the at leastone of the menu or the at least portion of the information notoverlapping the at least portion of the interface of the network browserapplication; said appearance of the at least portion of the interface ofthe network browser application of the at least one second virtualdisplay layer at the first depth that is greater than the second depthof the menu and the at least portion of the information, is not causedby, but is emphasized by the alteration; said appearance of the at leastone first virtual display layer above the at least one second virtualdisplay layer, is not caused by, but is emphasized by the alteration;said menu and the at least portion of the information are displayed inthe at least one first and second virtual display layers, at leastpartially as a result of the alteration; said alteration emphasizes thatthe menu and the at least portion of the information are displayed inthe at least one first and second virtual display layers; saidalteration emphasizes the fact that the menu and the at least portion ofthe information are displayed in the at least one first and secondvirtual display layers; said alteration includes at least one of: aneffect, a manipulation, a transformation, an animation, or an operation;said alteration includes a shading of visible portions of the at leastone second virtual display layer; said alteration includes a blurring ofvisible portions of the at least one second virtual display layer; saidat least portion of the interface of the network browser application ofthe at least one second virtual display layer is altered to appear atthe first depth that is greater than the second depth of the menu andthe at least portion of the information, to give a visual indication ofsimulated depth; said at least one of the menu or the at least portionof the information, includes the menu; said at least one of the menu orthe at least portion of the information, includes the at least portionof the information; said at least one of the menu or the at leastportion of the information, includes the menu and the at least portionof the information; said second depth is of the at least one firstvirtual display layer; said at least portion of the information is thesame as the information; said at least portion of the information isonly a subset of the information; said information includes an entiretyof content; said information includes an entirety of a web page; saidinformation includes a portion of content; said information includesonly a portion of content; said information includes a portion of a webpage; said information includes only a portion of a web page; said inresponse to detection of the cessation of the press gesture via thetouch screen on the hyperlink and the duration of the press gesturebeing detected to not exceed the duration threshold, includes inimmediate response to detection of the cessation of the press gesturevia the touch screen on the hyperlink and the duration of the pressgesture being detected to not exceed the duration threshold; said inresponse to detection of the cessation of the press gesture via thetouch screen on the hyperlink and the duration of the press gesturebeing detected to not exceed the duration threshold, includes in directresponse to detection of the cessation of the press gesture via thetouch screen on the hyperlink and the duration of the press gesturebeing detected to not exceed the duration threshold; said in response todetection of the cessation of the press gesture via the touch screen onthe hyperlink and the duration of the press gesture being detected tonot exceed the duration threshold, includes in indirect response todetection of the cessation of the press gesture via the touch screen onthe hyperlink and the duration of the press gesture being detected tonot exceed the duration threshold; said based on the at least portion ofthe press gesture being detected via the touch screen on the hyperlinkincludes any time during the at least portion of the press gesture beingdetected via the touch screen on the hyperlink; said based on the atleast portion of the press gesture being detected via the touch screenon the hyperlink includes only a portion of time during the at leastportion of the press gesture being detected via the touch screen on thehyperlink; said based on the at least portion of the press gesture beingdetected via the touch screen on the hyperlink includes an entirety oftime during the at least portion of the press gesture being detected viathe touch screen on the hyperlink; said based on the at least portion ofthe press gesture being detected via the touch screen on the hyperlinkincludes only during the at least portion of the press gesture beingdetected via the touch screen on the hyperlink; said based on theduration of the press gesture being detected to exceed the durationthreshold includes only based on the duration of the press gesture beingdetected to exceed the duration threshold; said based on the duration ofthe press gesture being detected to exceed the duration thresholdincludes any time based on the duration of the press gesture beingdetected to exceed the duration threshold; said based on the duration ofthe press gesture being detected to exceed the duration thresholdincludes any time after the duration of the press gesture being detectedto exceed the duration threshold; said based on the duration of thepress gesture being detected to exceed the duration threshold includesan instant in time based on the duration of the press gesture beingfirst detected to exceed the duration threshold; said based on theduration of the press gesture being detected to exceed the durationthreshold includes an instant in time after the duration of the pressgesture is detected to exceed the duration threshold; said based on theduration of the press gesture being detected to not exceed the durationthreshold includes any time based on the duration of the press gestureis detected to not exceed the duration threshold; said based on theduration of the press gesture being detected to not exceed the durationthreshold includes any time after the duration of the press gesture isdetected to not exceed the duration threshold; said based on theduration of the press gesture being detected to not exceed the durationthreshold includes an instant in time the duration of the press gestureis first detected to not exceed the duration threshold; said based onthe duration of the press gesture being detected to not exceed theduration threshold includes an instant in time after the duration of thepress gesture is detected to not exceed the duration threshold; saidfading results from a three-dimensional depth cue; said fading includesobscuring the at least portion of the interface of the network browserapplication that remains at least partially visible; said fadingincludes obscuring a visibility of the at least portion of the interfaceof the network browser application that remains at least partiallyvisible; said fading includes reducing a visibility of the at leastportion of the interface of the network browser application that remainsat least partially visible; said fading involves a transparency of theat least portion of the interface of the network browser applicationthat remains at least partially visible; said fading includes a changein transparency; said fading includes a reduction in color; said fadingincludes a reduction in brightness; said fading is applied to anentirety of the interface of the network browser application includingthat which remains at least partially visible; said fading is applied toan entirety of the interface of the network browser applicationincluding that which remains at least partially visible and that whichis invisible; said fading is applied to only the at least portion of theinterface of the network browser application that remains at leastpartially visible; said fading includes increasing a transparency of theat least portion of the interface of the network browser applicationthat remains at least partially visible; said fading includes decreasinga transparency of a virtual display layer overlaying the at leastportion of the interface of the network browser application that remainsat least partially visible; each instance of said based on involves onlya portion of a duration; each instance of said based on includes when;each instance of said based on includes while; said selection includes atap gesture; said selection includes a touch on the at least one option;said selection includes a cessation of a touch on the at least oneoption; said information is associated with the hyperlink by beingincluded as part of the hyperlink; said information is associated withthe hyperlink by being separate from the hyperlink, but correspondingthereto; said menu and the at least portion of the information aredisplayed by an operating system; said menu and the at least portion ofthe information are displayed by the network browser application; saidmenu and the at least portion of the information are displayed are partof the same graphical user interface element of the at least one firstvirtual display layer; said menu and the at least portion of theinformation are displayed are part of different graphical user interfaceelements of the at least one first virtual display layer; in a firstscenario involving a first gesture: the cessation of the press gesturevia the touch screen on the hyperlink is not detected and the durationof the press gesture is detected to not exceed the duration threshold,and the information associated with the hyperlink is not displayedutilizing the another interface, and the duration of the press gestureis detected to exceed the duration threshold, and the at least portionof the information and the menu are displayed; and in a second scenarioinvolving a second gesture: the cessation of the press gesture via thetouch screen on the hyperlink is detected and the duration of the pressgesture is detected to not exceed the duration threshold, and theinformation associated with the hyperlink is displayed utilizing theanother interface, and the duration of the press gesture is not detectedto exceed the duration threshold, and the menu is not displayed; said atleast portion of the interface of the network browser application thatremains at least partially visible is that which is not obstructed bythe at least one first virtual display layer; said at least portion ofthe interface of the network browser application that remains at leastpartially visible is that which is not obstructed by the menu and the atleast portion of the information; said hyperlink includes at least oneof an application icon, a message item, a photo, or a hyperlink; said atleast portion of the interface of the network browser application of theat least one second virtual display layer, appears to be behind the atleast one of the menu or the at least portion of the information; saidat least one of the menu or the at least portion of the informationoverlaps the at least portion of the interface of the network browserapplication of the at least one second virtual display layer; said atleast one of the menu or the at least portion of the information is atleast partially translucent so that the altered at least portion of theinterface of the network browser application remains at least partiallyvisible; said at least one of the menu or the at least portion of theinformation does not overlap the at least portion of the interface ofthe network browser application of the at least one second virtualdisplay layer; said at least portion of the interface of the networkbrowser application of the at least one second virtual display layer, isat a location that does not correspond to a location of the at least oneof the menu or the at least portion of the information; said at leastportion of the interface of the network browser application of the atleast one second virtual display layer is altered by the at least one ofthe menu or the at least portion of the information being displayed tobe at least partially translucent; said at least portion of theinformation is displayed and the menu is displayed during the sameportion of the press gesture; or said at least portion of theinformation is displayed and the menu is displayed during differentportions of the press gesture.
 139. A method, comprising: at anapparatus including at least one non-transitory memory storing aplurality of applications including a particular application, a touchscreen, and one or more processors in communication with the at leastone non-transitory memory and the touch screen: displaying on the touchscreen an application-specific icon associated with the particularapplication via a home screen, the home screen for choosing among theplurality of applications; based on a first duration of touch applied tothe touch screen on the application-specific icon and a subsequentcessation of the first duration of touch applied to the touch screen onthe application-specific icon being detected: launching the particularapplication; based on a second duration of touch, that is greater thanthe first duration, applied to the touch screen on theapplication-specific icon being detected: causing display of at leastone option on the touch screen; and based on a touch applied to thetouch screen on the at least one option being detected, performing atleast one action corresponding to the at least one option; wherein atleast a portion of the home screen is faded in relation to the detectionof the second duration of touch; wherein at least one of: the particularapplication includes a navigation application; the application-specificicon includes a navigation application icon; based on the first durationof touch applied to the touch screen on the navigation application iconand the subsequent cessation of the first duration of touch applied tothe touch screen on the navigation application icon being detected, thenavigation application is launched; and based on the second duration oftouch applied to the touch screen on the navigation application iconbeing detected, the displayed at least one option includes an option foraccess to navigation information utilizing the navigation application;the particular application includes a browser application; theapplication-specific icon includes a browser application icon; based onthe first duration of touch applied to the touch screen on the browserapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the browser application icon beingdetected, the browser application is launched; and based on the secondduration of touch applied to the touch screen on the browser applicationicon being detected, the displayed at least one option includes anoption for performing an operation utilizing the browser application;the particular application includes a media application; theapplication-specific icon includes a media application icon; based onthe first duration of touch applied to the touch screen on the mediaapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the media application icon beingdetected, the media application is launched; and based on the secondduration of touch applied to the touch screen on the media applicationicon being detected, the displayed at least one option includes anoption for accessing at least one track to be played utilizing the mediaapplication; the particular application includes a communicationapplication; the application-specific icon includes a communicationapplication icon; based on the first duration of touch applied to thetouch screen on the communication application icon and the subsequentcessation of the first duration of touch applied to the touch screen onthe communication application icon being detected, the communicationapplication is launched; and based on the second duration of touchapplied to the touch screen on the communication application icon beingdetected, the displayed at least one option includes an option foraccessing at least one feature utilizing the communication application;the particular application includes a calendar application; theapplication-specific icon includes a calendar application icon; based onthe first duration of touch applied to the touch screen on the calendarapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the calendar application icon beingdetected, the calendar application is launched; and based on the secondduration of touch applied to the touch screen on the calendarapplication icon being detected, the displayed at least one optionincludes an option for creating an event utilizing the calendarapplication; the particular application includes a camera application;the application-specific icon includes a camera application icon; basedon the first duration of touch applied to the touch screen on the cameraapplication icon and the subsequent cessation of the first duration oftouch applied to the touch screen on the camera application icon beingdetected, the camera application is launched; and based on the secondduration of touch applied to the touch screen on the camera applicationicon being detected, the displayed at least one option includes anoption for setting a camera setting; or the particular applicationincludes a phone application; the application-specific icon includes aphone application icon; based on the first duration of touch applied tothe touch screen on the phone application icon and the subsequentcessation of the first duration of touch applied to the touch screen onthe phone application icon being detected, the phone application islaunched; and based on the second duration of touch applied to the touchscreen on the phone application icon being detected, the displayed atleast one option includes an option for accessing phone-relatedinformation, utilizing the phone application.
 140. The method of claim139, wherein the at least one option is displayed, without necessitatingprior launch of the particular application where the prior launch of theparticular application is performed based on the first duration of touchapplied to the touch screen on the application-specific icon and thesubsequent cessation of the first duration of touch applied to the touchscreen on the application-specific icon being detected.
 141. The methodof claim 139, wherein the particular application includes the navigationapplication.
 142. The method of claim 139, wherein the particularapplication includes the browser application.
 143. The method of claim142, wherein the displayed at least one option further includes anoption for opening a new tab utilizing the browser application.
 144. Themethod of claim 139, wherein the particular application includes thecommunication application, and the displayed at least one optionincludes an option for creating a new message utilizing thecommunication application.
 145. The method of claim 139, wherein theparticular application includes the navigation application, the browserapplication, the media application, the communication application, thecalendar application, the camera application, and the phone application.146. The method of claim 139, wherein the particular applicationincludes the camera application, and the displayed at least one option,in response to a selection thereof, results in the camera applicationbeing launched in a manner that reflects the camera setting.
 147. Themethod of claim 139, wherein the particular application includes thecamera application, and the displayed at least one option, in responseto a selection thereof, results in the camera application being launchedin a manner that reflects the camera setting, including a video camerasetting.
 148. The method of claim 139, wherein the at least portion ofthe home screen is faded, in response to the second duration of touchbeing applied to the touch screen on the application-specific icon beingdetected, for making the at least portion of the home screen appear tobe at a greater depth as compared to the at least one option.
 149. Themethod of claim 139, wherein the at least portion of the home screen isfaded, by a transparency of the at least one option being reduced. 150.The method of claim 139, wherein the at least portion of the home screenthat is faded only includes a part of the home screen whose locationcoincides with that of the at least one option, and the fading includesbeing displayed to be faded out while the at least one option isdisplayed to be faded in, in response to the detection of the secondduration of touch being applied to the touch screen.
 151. The method ofclaim 139, wherein the at least portion of the home screen that is fadedappears underneath the at least one option that is part of a menu, andthe at least portion of the home screen is faded by the menu beingtranslucent.
 152. The method of claim 139, wherein the at least oneoption is part of a menu that is displayed in a different virtualdisplay layer in relation to the at least portion of the home screen,and the fading includes a fading out which is performed simultaneouslywith the menu being faded in, in response to the second duration oftouch being applied to the touch screen.
 153. The method of claim 152,wherein the virtual display layer is also different in relation to theapplication-specific icon.
 154. The method of claim 152, wherein themenu is staggered with respect to the application-specific icon. 155.The method of claim 152, wherein the at least portion of the home screenthat is faded includes only a part of the home screen that appearsbeneath the menu.
 156. The method of claim 139, wherein the at least oneoption is part of a menu that is displayed in a different virtualdisplay layer in relation to the at least portion of the home screen,and the fading includes a continuous fading out over a period of timewhich is performed simultaneously with the menu being continuously fadedin over the period of time, in response to the second duration of touchbeing applied to the touch screen.
 157. A method, comprising: at anapparatus including at least one non-transitory memory storing aplurality of applications, a touch screen, and one or more processors incommunication with the at least one non-transitory memory and the touchscreen: without a navigation application being launched, displaying, onthe touch screen, a navigation application-specific icon associated withthe navigation application via a home screen, the home screen forchoosing among the plurality of applications; detecting a first gesturethat is applied to the touch screen on the navigationapplication-specific icon and that is capable of causing a plurality oftouch states in connection with the navigation application-specificicon; in response to detection of a cessation of a first touch state ofthe plurality of touch states caused by the detection of the firstgesture on the navigation application-specific icon, launching thenavigation application; based on at least a portion of the detection ofthe first gesture, fading at least a portion of the home screen, forproviding a first gesture-touch duration feedback in connection with thenavigation application-specific icon; in response to detection of asecond touch state of the plurality of touch states caused by thedetection of the first gesture on the navigation application-specificicon, displaying a menu associated with the navigationapplication-specific icon to permit access to navigation informationutilizing the menu associated with the navigation application-specificicon; without a browser application being launched, displaying, on thetouch screen, a browser application-specific icon associated with thebrowser application via the home screen; detecting a second gesture thatis applied to the touch screen on the browser application-specific iconand that is capable of causing the plurality of touch states inconnection with the browser application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the second gesture on thebrowser application-specific icon, launching the browser application;based on at least a portion of the detection of the second gesture,fading at least a portion of the home screen, for providing a secondgesture-touch duration feedback in connection with the browserapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesecond gesture on the browser application-specific icon, displaying amenu associated with the browser application-specific icon to permitaccess to an operation utilizing the menu associated with the browserapplication-specific icon; without a media application being launched,displaying, on the touch screen, a media application-specific iconassociated with the media application via the home screen; detecting athird gesture that is applied to the touch screen on the mediaapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the media application-specific icon;in response to detection of a cessation of the first touch state of theplurality of touch states caused by the detection of the third gestureon the media application-specific icon, launching the media application;based on at least a portion of the detection of the third gesture,fading at least a portion of the home screen, for providing a thirdgesture-touch duration feedback in connection with the mediaapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thethird gesture on the media application-specific icon, displaying a menuassociated with the media application-specific icon to permit access toat least one track utilizing the menu associated with the mediaapplication-specific icon; without a communication application beinglaunched, displaying, on the touch screen, a communicationapplication-specific icon associated with the communication applicationvia the home screen; detecting a fourth gesture that is applied to thetouch screen on the communication application-specific icon and that iscapable of causing the plurality of touch states in connection with thecommunication application-specific icon; in response to detection of acessation of the first touch state of the plurality of touch statescaused by the detection of the fourth gesture on the communicationapplication-specific icon, launching the communication application;based on at least a portion of the detection of the fourth gesture,fading at least a portion of the home screen, for providing a fourthgesture-touch touch duration feedback in connection with thecommunication application-specific icon; in response to detection of thesecond touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, displaying a menu associated with thecommunication application-specific icon to permit access to at least onefeature utilizing the communication application; without a calendarapplication being launched, displaying, on the touch screen, a calendarapplication-specific icon associated with the calendar application viathe home screen; detecting a fifth gesture that is applied to the touchscreen on the calendar application-specific icon and that is capable ofcausing the plurality of touch states in connection with the calendarapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fifth gesture on the calendar application-specificicon, launching the calendar application; based on at least a portion ofthe detection of the filth gesture, fading at least a portion of thehome screen, for providing a fifth gesture-touch duration feedback inconnection with the calendar application-specific icon; in response todetection of the second touch state of the plurality of touch statescaused by the detection of the fifth gesture on the calendarapplication-specific icon, displaying a menu associated with thecalendar application-specific icon to permit access to an operation forcreation of an event utilizing the menu associated with the calendarapplication-specific icon; without a camera application being launched,displaying, on the touch screen, a camera application-specific iconassociated with the camera application via the home screen; detecting asixth gesture that is applied to the touch screen on the cameraapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the camera application-specific icon;in response to detection of a cessation of the first touch state of theplurality of touch states caused by the detection of the sixth gestureon the camera application-specific icon, launching the cameraapplication; based on at least a portion of the detection of the sixthgesture, fading at least a portion of the home screen, for providing asixth gesture-touch duration feedback in connection with the cameraapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesixth gesture on the camera application-specific icon, displaying a menuassociated with the camera application-specific icon to permit access toan operation for setting a camera setting utilizing the menu associatedwith the camera application-specific icon; without a phone applicationbeing launched, displaying, on the touch screen, a phoneapplication-specific icon associated with the phone application via thehome screen; detecting a seventh gesture that is applied to the touchscreen on the phone application-specific icon and that is capable ofcausing the plurality of touch states in connection with the phoneapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the seventh gesture on the phone application-specific icon,launching the phone application; and based on at least a portion of thedetection of the seventh gesture, fading at least a portion of the homescreen, for providing a seventh gesture-touch duration feedback inconnection with the phone application-specific icon; and in response todetection of the second touch state of the plurality of touch statescaused by the detection of the seventh gesture on the phoneapplication-specific icon, displaying a menu associated with the phoneapplication-specific icon to permit access to phone-related informationutilizing the menu associated with the phone application-specific icon.158. The method of claim 157, wherein: for each of the first, thesecond, the third, the fourth, the fifth, the sixth, and the seventhgestures, the fading occurs in connection with at least a portion of thesecond touch state; the first touch state is caused by a gesture touchduration being below a threshold, and the second touch state is causedby the gesture touch duration surpassing the threshold; and based on theat least portion of the detection of the first, the second, the third,the fourth, the fifth, the sixth, and the seventh gestures, differentportions of the home screen are faded.
 159. A method, comprising: at anapparatus including at least one non-transitory memory storing aplurality of applications, a touch screen, and one or more processors incommunication with the at least one non-transitory memory and the touchscreen: without a navigation application being launched, displaying, onthe touch screen, a navigation application-specific icon associated withthe navigation application via a home screen, the home screen forchoosing among the plurality of applications; detecting a first gesturethat is applied to the touch screen on the navigationapplication-specific icon and that is capable of causing a plurality oftouch states in connection with the navigation application-specificicon; based on a cessation of a first touch state of the plurality oftouch states being detected in connection with the navigationapplication-specific icon, launching the navigation application; withoutrequiring the navigation application to be launched beforehand and basedon a second touch state of the plurality of touch states being detectedin connection with the navigation application-specific icon, displayingat least one navigation application-specific option of a navigationapplication-specific menu such that at least a portion of the homescreen thereunder is faded to appear to be at a greater depth ascompared to the navigation application-specific menu; without a browserapplication being launched, displaying, on the touch screen, a browserapplication-specific icon associated with the browser application viathe home screen; detecting a second gesture that is applied to the touchscreen on the browser application-specific icon and that is capable ofcausing the plurality of touch states in connection with the browserapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thebrowser application-specific icon, launching the browser application;without requiring the browser application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the browser application-specific icon,displaying at least one browser application-specific option of a browserapplication-specific menu such that at least a portion of the homescreen thereunder is faded to appear to be at a greater depth ascompared to the browser application-specific menu, the displayed atleast one browser application-specific option including an option forperforming an operation utilizing the browser application; without amedia application being launched, displaying, on the touch screen, amedia application-specific icon associated with the media applicationvia the home screen; detecting a third gesture that is applied to thetouch screen on the media application-specific icon and that is capableof causing the plurality of touch states in connection with the mediaapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with themedia application-specific icon, launching the media application;without requiring the media application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the media application-specific icon,displaying at least one media application-specific option of a mediaapplication-specific menu such that at least a portion of the homescreen thereunder is faded to appear to be at a greater depth ascompared to the media application-specific menu, the displayed at leastone media application-specific option including an option for accessingat least one track utilizing the media application; without acommunication application being launched, displaying, on the touchscreen, a communication application-specific icon associated with thecommunication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecommunication application-specific icon, launching the communicationapplication; without requiring the communication application to belaunched beforehand and based on the second touch state of the pluralityof touch states being detected in connection with the communicationapplication-specific icon, displaying at least one communicationapplication-specific option of a communication application-specific menusuch that at least a portion of the home screen thereunder is faded toappear to be at a greater depth as compared to the communicationapplication-specific menu, the displayed at least one communicationapplication-specific option including an option for access to at leastone feature utilizing the communication application; without a calendarapplication being launched, displaying, on the touch screen, a calendarapplication-specific icon associated with the calendar application viathe home screen; detecting a fifth gesture that is applied to the touchscreen on the calendar application-specific icon and that is capable ofcausing the plurality of touch states in connection with the calendarapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecalendar application-specific icon, launching the calendar application;without requiring the calendar application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the calendar application-specific icon,displaying at least one calendar application-specific option of acalendar application-specific menu such that at least a portion of thehome screen thereunder is faded to appear to be at a greater depth ascompared to the calendar application-specific menu, the displayed atleast one calendar application-specific option including an option forcreating an event utilizing the calendar application; without a cameraapplication being launched, displaying, on the touch screen, a cameraapplication-specific icon associated with the camera application via thehome screen; detecting a sixth gesture that is applied to the touchscreen on the camera application-specific icon and that is capable ofcausing the plurality of touch states in connection with the cameraapplication-specific icon; based on a cessation of the first touch stateof the plurality of touch states being detected in connection with thecamera application-specific icon, launching the camera application;without requiring the camera application to be launched beforehand andbased on the second touch state of the plurality of touch states beingdetected in connection with the camera application-specific icon,displaying at least one camera application-specific option of a cameraapplication-specific menu such that at least a portion of the homescreen thereunder is faded to appear to be at a greater depth ascompared to the camera application-specific menu, the displayed at leastone camera application-specific option including an option for setting acamera setting; without a phone application being launched, displaying,on the touch screen, a phone application-specific icon associated withthe phone application via the home screen; detecting a seventh gesturethat is applied to the touch screen on the phone application-specificicon and that is capable of causing the plurality of touch states inconnection with the phone application-specific icon; based on acessation of the first touch state of the plurality of touch statesbeing detected in connection with the phone application-specific icon,launching the phone application; and without requiring the phoneapplication to be launched beforehand and based on the second touchstate of the plurality of touch states being detected in connection withthe phone application-specific icon, displaying at least one phoneapplication-specific option of a phone application-specific menu suchthat at least a portion of the home screen thereunder is faded to appearto be at a greater depth as compared to the phone application-specificmenu, the displayed at least one phone application-specific optionincluding an option for accessing phone-related information utilizingthe phone application.
 160. A method, comprising: at an apparatusincluding at least one non-transitory memory storing a plurality ofapplications, a touch screen, and one or more processors incommunication with the at least one non-transitory memory and the touchscreen: without a navigation application being launched, displaying, onthe touch screen, a navigation application-specific icon associated withthe navigation application via a home screen, the home screen forchoosing among the plurality of applications; detecting a first gesturethat is applied to the touch screen on the navigationapplication-specific icon and that is capable of causing a plurality oftouch states in connection with the navigation application-specificicon; in response to detection of a cessation of a first touch state ofthe plurality of touch states caused by the detection of the firstgesture on the navigation application-specific icon, launching thenavigation application; based on at least a portion of the detection ofthe first gesture, fading at least a portion of the home screen under anavigation application-specific menu, for providing a firstgesture-touch duration feedback in connection with the navigationapplication-specific icon; in response to detection of a second touchstate of the plurality of touch states caused by the detection of thefirst gesture on the navigation application-specific icon, displaying atleast one navigation application-specific option of the navigationapplication-specific menu, the displayed at least one navigationapplication-specific option including an option for access to navigationinformation utilizing the navigation application; without a browserapplication being launched, displaying, on the touch screen, a browserapplication-specific icon associated with the browser application viathe home screen; detecting a second gesture that is applied to the touchscreen on the browser application-specific icon and that is capable ofcausing the plurality of touch states in connection with the browserapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the second gesture on the browser application-specificicon, launching the browser application; based on at least a portion ofthe detection of the second gesture, fading at least a portion of thehome screen under a browser application-specific menu, for providing asecond gesture-touch duration feedback in connection with the browserapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thesecond gesture on the browser application-specific icon, displaying atleast one browser application-specific option of the browserapplication-specific menu, the displayed at least one browserapplication-specific option including an option for performing anoperation utilizing the browser application; without a media applicationbeing launched, displaying, on the touch screen, a mediaapplication-specific icon associated with the media application via thehome screen; detecting a third gesture that is applied to the touchscreen on the media application-specific icon and that is capable ofcausing the plurality of touch states in connection with the mediaapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the third gesture on the media application-specific icon,launching the media application; based on at least a portion of thedetection of the third gesture, fading at least a portion of the homescreen under a media application-specific menu, for providing a thirdgesture-touch duration feedback in connection with the mediaapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thethird gesture on the media application-specific icon, displaying atleast one media application-specific option of the mediaapplication-specific menu, the displayed at least one mediaapplication-specific option including an option for accessing at leastone track utilizing the media application; without a communicationapplication being launched, displaying, on the touch screen, acommunication application-specific icon associated with thecommunication application via the home screen; detecting a fourthgesture that is applied to the touch screen on the communicationapplication-specific icon and that is capable of causing the pluralityof touch states in connection with the communicationapplication-specific icon; in response to detection of a cessation ofthe first touch state of the plurality of touch states caused by thedetection of the fourth gesture on the communicationapplication-specific icon, launching the communication application;based on at least a portion of the detection of the fourth gesture,fading at least a portion of the home screen under a communicationapplication-specific menu, for providing a fourth gesture-touch touchduration feedback in connection with the communicationapplication-specific icon; in response to detection of the second touchstate of the plurality of touch states caused by the detection of thefourth gesture on the communication application-specific icon,displaying at least one communication application-specific option of thecommunication application-specific menu, the displayed at least onecommunication application-specific option including an option for accessto at least one feature utilizing the communication application; withouta calendar application being launched, displaying, on the touch screen,a calendar application-specific icon associated with the calendarapplication via the home screen; detecting a fifth gesture that isapplied to the touch screen on the calendar application-specific iconand that is capable of causing the plurality of touch states inconnection with the calendar application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the fifth gesture on thecalendar application-specific icon, launching the calendar application;based on at least a portion of the detection of the fifth gesture,fading at least a portion of the home screen under a calendarapplication-specific menu, for providing a fifth gesture-touch durationfeedback in connection with the calendar application-specific icon; inresponse to detection of the second touch state of the plurality oftouch states caused by the detection of the fifth gesture on thecalendar application-specific icon, displaying at least one calendarapplication-specific option of the calendar application-specific menu,the displayed at least one calendar application-specific optionincluding an option for creating an event utilizing the calendarapplication; without a camera application being launched, displaying, onthe touch screen, a camera application-specific icon associated with thecamera application via the home screen; detecting a sixth gesture thatis applied to the touch screen on the camera application-specific iconand that is capable of causing the plurality of touch states inconnection with the camera application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the sixth gesture on the cameraapplication-specific icon, launching the camera application; based on atleast a portion of the detection of the sixth gesture, fading at least aportion of the home screen under a camera application-specific menu, forproviding a sixth gesture-touch duration feedback in connection with thecamera application-specific icon; in response to detection of the secondtouch state of the plurality of touch states caused by the detection ofthe sixth gesture on the camera application-specific icon, displaying atleast one camera application-specific option of the cameraapplication-specific menu, the displayed at least one cameraapplication-specific option including an option for setting a camerasetting; without a phone application being launched, displaying, on thetouch screen, a phone application-specific icon associated with thephone application via the home screen; detecting a seventh gesture thatis applied to the touch screen on the phone application-specific iconand that is capable of causing the plurality of touch states inconnection with the phone application-specific icon; in response todetection of a cessation of the first touch state of the plurality oftouch states caused by the detection of the seventh gesture on the phoneapplication-specific icon, launching the phone application; based on atleast a portion of the detection of the seventh gesture, fading at leasta portion of the home screen under a phone application-specific menu,for providing a seventh gesture-touch duration feedback in connectionwith the phone application-specific icon; and in response to detectionof the second touch state of the plurality of touch states caused by thedetection of the seventh gesture on the phone application-specific icon,displaying at least one phone application-specific option of the phoneapplication-specific menu, the displayed at least one phoneapplication-specific option including an option for accessingphone-related information utilizing the phone application.
 161. Themethod of claim 160, wherein, for each of the first, the second, thethird, the fourth, the fifth, the sixth, and the seventh gestures, theat least portion of the home screen includes only a part of the homescreen under the respective application-specific menu.
 162. The methodof claim 160, wherein, for each of the first, the second, the third, thefourth, the fifth, the sixth, and the seventh gestures, the first touchstate is caused by a gesture touch duration remaining below a threshold,and the second touch state is caused by the gesture touch durationsurpassing the threshold.
 163. The method of claim 162, wherein, foreach of the first, the second, the third, the fourth, the fifth, thesixth, and the seventh gestures, the fading is performed to emphasizethe display of a respective option in a different virtual display layer.164. The method of claim 160, wherein, for each of the first, thesecond, the third, the fourth, the fifth, the sixth, and the seventhgestures, the fading includes a lading out which is performedsimultaneously with the respective option being faded in, in response tothe detection of the second touch state.
 165. The method of claim 160,wherein, for each of the first, the second, the third, the fourth, thefifth, the sixth, and the seventh gestures, the fading is performedsimultaneously with the display of the respective option both inresponse to the detection of the second touch state, and only in anabsence of the cessation of the first touch state.
 166. The method ofclaim 165, wherein at least one of: said touch screen includes a touchinterface and a display; said touch screen is a combination of a touchinterface and a display; said touch screen is on a front face of theapparatus; said touch screen is on a back face of the apparatus; saidone or more processors is in direct communication with the at least onenon-transitory memory, and the touch screen; said one or more processorsis in indirect communication with the at least one non-transitorymemory, and the touch screen; said one or more processors is incommunication, via at least one bus, with the at least onenon-transitory memory, and the touch screen; said at least onenon-transitory memory includes a single memory for storing instructionsand the plurality of applications; said at least one non-transitorymemory includes a first memory for storing instructions and a secondmemory for storing the plurality of applications; each of the first, thesecond, the third, the fourth, the fifth, the sixth, and the seventhgestures includes at least one of a touch gesture and/or a pressgesture; each of the first, the second, the third, the fourth, thefifth, the sixth, and the seventh gestures includes a combination of atouch gesture and a press gesture; each of the first, the second, thethird, the fourth, the fifth, the sixth, and the seventh gestures isdetected utilizing one or more of a plurality of contact-sensingtechnologies including a capacitive-based contact sensing technology, aresistive-based contact sensing technology, an optical-based contactsensing technology, or a surface acoustic wave-based contact sensingtechnology; each of the first, the second, the third, the fourth, thefifth, the sixth, and the seventh gestures results in a touch signalbeing generated that, during a first component of the respectivegesture, is not touch duration-dependent, and, during a second componentof the respective gesture, is touch duration-dependent; each of thefirst, the second, the third, the fourth, the fifth, the sixth, and theseventh gestures are also pressure-dependent; each of the first, thesecond, the third, the fourth, the fifth, the sixth, and the seventhgestures are not pressure-dependent; said touch screen is atwo-dimensional layered user interface; said touch screen is a singlelayer user interface that simulates a three-dimensional layered userinterface through use of virtual display layers; said launch of each ofthe applications is associated with the first touch state, by a user;said launch of each of the applications is associated with the firsttouch state, by a developer; said launch of each of the applications isassociated with the first touch state, via system learning; said displayof each of the at least one options is associated with the second touchstate, by a user; said display of each of the at least one options isassociated with the second touch state, by a developer; said display ofeach of the at least one options is associated with the second touchstate, via system learning; each of said at least one options and thehome screen are each part of different layers with differentthree-dimensional depth queues; said at least one navigationapplication-specific option and the home screen are each part ofdifferent layers that are accessible via different inputs of differenttouch durations; said at least one navigation application-specificoption and the home screen are each part of different layers that areaccessible via different inputs of different touch durations; eachinstance of said fading occurs during at least a portion of the secondtouch state; each instance of said fading occurs after detection of thesecond touch state; said fading indicates a movement through thedifferent layers; said fading includes a reduction in visibility; saidfading includes a reduction in freshness; said fading includes areduction in brilliance; said fading includes a reduction in color; saidfading includes a partial vanishing; said fading includes displaying asto sink away; said fading includes an adjustment of transparency of anoverlying user interface element; said fading includes an adjustment oftranslucency of an overlying user interface element; said fadingincludes a decrease of transparency of an overlying user interfaceelement; said fading includes a decrease of translucency of an overlyinguser interface element; said fading includes fading out; said at leastone navigation application-specific option and the home screen are partof a three-dimensional layered user interface that can be operated uponvia a back interaction surface; said camera setting includes a videosetting; said camera setting includes a photograph setting; saidnavigation application-specific icon includes an iconic representationof the navigation application; said navigation application-specific iconincludes text specific to the navigation application; said navigationinformation includes route information; said navigation informationincludes a location; said navigation information includes a map; saidnavigation information includes an address; said option for accessingphone-related information includes accessing at least one of a voicemailor a favorite utilizing the phone application; said option for accessingthe at least one track to be played utilizing the media application,includes an option for displaying the at least one track for beingplayed in response to a selection thereof; said first gesture-touchduration feedback in connection with the browser application-specificicon includes a visual indication, via the fading of the at leastportion of the home screen, of a current touch duration of the firstgesture; said communication application includes a contacts application;said communication application includes a messaging application; the atleast one feature includes creating a new message utilizing thecommunication application; the at least one feature includes at leastone communication technique utilizing the communication application;said navigation application-specific icon is displayed without thenavigation application being launched, by being displayed before thenavigation application is launched for an initial time; said navigationapplication-specific icon is displayed without the navigationapplication being launched, by being displayed before the navigationapplication is launched a second time after being launched a first timeand subsequently being closed; each of the first, the second, the third,the fourth, the fifth, the sixth, and the seventh gestures is capable ofcausing the first touch state by including different touch durationsthat are below a threshold; each of the first, the second, the third,the fourth, the fifth, the sixth, and the seventh gestures is capable ofcausing the first touch state by including different touch durationsthat remain below a threshold; each of the first, the second, the third,the fourth, the fifth, the sixth, and the seventh gestures is capable ofcausing the second touch state by including different touch durationsthat surpass a threshold; each of the first, the second, the third, thefourth, the fifth, the sixth, and the seventh gestures is capable ofcausing the second touch state by including different touch durationsthat surpass, at least once, a threshold; said cessation of the firsttouch state of the plurality of touch states caused by the detection ofthe first gesture on the navigation application-specific icon, includesa stopping of the first gesture; said cessation of the first touch stateof the plurality of touch states caused by the detection of the firstgesture on the navigation application-specific icon, includes a removalof all touch in connection with the first gesture; said first touchstate is capable of existing in a first usage scenario without thesecond touch state existing during the first usage scenario, and thesecond touch state is capable of existing in a second usage scenariowithout the first touch state existing during the second usage scenario;the event includes an appointment; or where, in response to detection ofthe second touch state of the plurality of touch states caused by thedetection of the fifth gesture on the calendar application-specificicon, the at least one calendar application-specific option includingcreating the event is displayed by at least partially launching thecalendar application, but without launching the calendar application inresponse to the cessation of the first touch state of the plurality oftouch states caused by the detection of the first gesture on thecalendar application-specific icon.
 167. The method of claim 160,wherein the at least portion of the home screen that is faded appearssituated under the at least one option.
 168. The method of claim 139,wherein the at least portion of the home screen that is faded includesonly a part of the home screen whose location on the touch screencoincides with that of the at least one option.
 169. The method of claim139, wherein, based on the second duration of touch applied to the touchscreen on the application-specific icon being detected: at least oneaspect of the application-specific icon is caused to be animated. 170.The method of claim 139, wherein, based on the second duration of touchapplied to the touch screen on the application-specific icon beingdetected: at least one aspect of the application-specific icon is causedto be pulsed while the at least one option is displayed on the touchscreen.
 171. The method of claim 139, wherein, based on the secondduration of touch applied to the touch screen on theapplication-specific icon being detected: a location of theapplication-specific icon is caused to be pulsed until the touch appliedto the touch screen on the at least one option is detected.
 172. Themethod of claim 139, wherein, in response to detection of the secondtouch state of the plurality of touch states, a respectiveapplication-specific icon is animated while a respective menu isdisplayed.
 173. The method of claim 172, wherein, in response todetection of the second touch state of the plurality of touch states, alocation of the respective application-specific icon is pulsed onlywhile the respective menu is displayed.
 174. The method of claim 172,wherein, in response to detection of the second touch state of theplurality of touch states, a location of the respectiveapplication-specific icon is pulsed only during the fading.
 175. Themethod of claim 172, wherein, in response to detection of the secondtouch state of the plurality of touch states, the respectiveapplication-specific icon is animated for emphasizing the respectivemenu.
 176. The method of claim 172, wherein, in response to detection ofthe second touch state of the plurality of touch states, a location of acorresponding application-specific icon is animated for an emphasisthereof in connection with a corresponding menu.